+29
-9
server/handle_server_delete_account.go
+29
-9
server/handle_server_delete_account.go
···
66
})
67
}
68
69
-
if err := s.db.Exec("DELETE FROM blocks WHERE did = ?", nil, req.Did).Error; err != nil {
70
s.logger.Error("error deleting blocks", "error", err)
71
return helpers.ServerError(e, nil)
72
}
73
74
-
if err := s.db.Exec("DELETE FROM records WHERE did = ?", nil, req.Did).Error; err != nil {
75
s.logger.Error("error deleting records", "error", err)
76
return helpers.ServerError(e, nil)
77
}
78
79
-
if err := s.db.Exec("DELETE FROM blobs WHERE did = ?", nil, req.Did).Error; err != nil {
80
s.logger.Error("error deleting blobs", "error", err)
81
return helpers.ServerError(e, nil)
82
}
83
84
-
if err := s.db.Exec("DELETE FROM tokens WHERE did = ?", nil, req.Did).Error; err != nil {
85
s.logger.Error("error deleting tokens", "error", err)
86
return helpers.ServerError(e, nil)
87
}
88
89
-
if err := s.db.Exec("DELETE FROM refresh_tokens WHERE did = ?", nil, req.Did).Error; err != nil {
90
s.logger.Error("error deleting refresh tokens", "error", err)
91
return helpers.ServerError(e, nil)
92
}
93
94
-
if err := s.db.Exec("DELETE FROM reserved_keys WHERE did = ?", nil, req.Did).Error; err != nil {
95
s.logger.Error("error deleting reserved keys", "error", err)
96
return helpers.ServerError(e, nil)
97
}
98
99
-
if err := s.db.Exec("DELETE FROM invite_codes WHERE did = ?", nil, req.Did).Error; err != nil {
100
s.logger.Error("error deleting invite codes", "error", err)
101
return helpers.ServerError(e, nil)
102
}
103
104
-
if err := s.db.Exec("DELETE FROM actors WHERE did = ?", nil, req.Did).Error; err != nil {
105
s.logger.Error("error deleting actor", "error", err)
106
return helpers.ServerError(e, nil)
107
}
108
109
-
if err := s.db.Exec("DELETE FROM repos WHERE did = ?", nil, req.Did).Error; err != nil {
110
s.logger.Error("error deleting repo", "error", err)
111
return helpers.ServerError(e, nil)
112
}
113
···
66
})
67
}
68
69
+
tx := s.db.BeginDangerously()
70
+
if tx.Error != nil {
71
+
s.logger.Error("error starting transaction", "error", tx.Error)
72
+
return helpers.ServerError(e, nil)
73
+
}
74
+
75
+
if err := tx.Exec("DELETE FROM blocks WHERE did = ?", nil, req.Did).Error; err != nil {
76
+
tx.Rollback()
77
s.logger.Error("error deleting blocks", "error", err)
78
return helpers.ServerError(e, nil)
79
}
80
81
+
if err := tx.Exec("DELETE FROM records WHERE did = ?", nil, req.Did).Error; err != nil {
82
+
tx.Rollback()
83
s.logger.Error("error deleting records", "error", err)
84
return helpers.ServerError(e, nil)
85
}
86
87
+
if err := tx.Exec("DELETE FROM blobs WHERE did = ?", nil, req.Did).Error; err != nil {
88
+
tx.Rollback()
89
s.logger.Error("error deleting blobs", "error", err)
90
return helpers.ServerError(e, nil)
91
}
92
93
+
if err := tx.Exec("DELETE FROM tokens WHERE did = ?", nil, req.Did).Error; err != nil {
94
+
tx.Rollback()
95
s.logger.Error("error deleting tokens", "error", err)
96
return helpers.ServerError(e, nil)
97
}
98
99
+
if err := tx.Exec("DELETE FROM refresh_tokens WHERE did = ?", nil, req.Did).Error; err != nil {
100
+
tx.Rollback()
101
s.logger.Error("error deleting refresh tokens", "error", err)
102
return helpers.ServerError(e, nil)
103
}
104
105
+
if err := tx.Exec("DELETE FROM reserved_keys WHERE did = ?", nil, req.Did).Error; err != nil {
106
+
tx.Rollback()
107
s.logger.Error("error deleting reserved keys", "error", err)
108
return helpers.ServerError(e, nil)
109
}
110
111
+
if err := tx.Exec("DELETE FROM invite_codes WHERE did = ?", nil, req.Did).Error; err != nil {
112
+
tx.Rollback()
113
s.logger.Error("error deleting invite codes", "error", err)
114
return helpers.ServerError(e, nil)
115
}
116
117
+
if err := tx.Exec("DELETE FROM actors WHERE did = ?", nil, req.Did).Error; err != nil {
118
+
tx.Rollback()
119
s.logger.Error("error deleting actor", "error", err)
120
return helpers.ServerError(e, nil)
121
}
122
123
+
if err := tx.Exec("DELETE FROM repos WHERE did = ?", nil, req.Did).Error; err != nil {
124
+
tx.Rollback()
125
s.logger.Error("error deleting repo", "error", err)
126
+
return helpers.ServerError(e, nil)
127
+
}
128
+
129
+
if err := tx.Commit().Error; err != nil {
130
+
s.logger.Error("error committing transaction", "error", err)
131
return helpers.ServerError(e, nil)
132
}
133