File tree Expand file tree Collapse file tree 2 files changed +14
-18
lines changed
Expand file tree Collapse file tree 2 files changed +14
-18
lines changed Original file line number Diff line number Diff line change @@ -18,26 +18,11 @@ var _202508041712_delete_non_cascade_deleted_records = &gormigrate.Migration{
1818 // - app_permissions -> apps
1919 // - request_events -> apps
2020 // - response_events -> request_events
21+ // however we will only delete app permissions.
22+ // excess request and response events will be removed in batches by a background task.
2123
22- if err := db .Transaction (func (tx * gorm.DB ) error {
23-
24- // delete orphaned app permissions
25- if err := tx .Exec (`DELETE FROM app_permissions
24+ if err := db .Exec (`DELETE FROM app_permissions
2625WHERE app_id NOT IN (SELECT id FROM apps)` ).Error ; err != nil {
27- return err
28- }
29-
30- // delete request and response events, later we will setup a task to delete excess events
31- if err := tx .Exec (`DELETE FROM request_events` ).Error ; err != nil {
32- return err
33- }
34-
35- if err := tx .Exec (`DELETE FROM response_events` ).Error ; err != nil {
36- return err
37- }
38-
39- return nil
40- }); err != nil {
4126 return err
4227 }
4328
Original file line number Diff line number Diff line change @@ -326,4 +326,15 @@ func (svc *service) removeExcessEvents() {
326326 "amount" : numEventsToDelete ,
327327 "below_id" : deleteEventsBelowId ,
328328 }).Info ("Removed excess events" )
329+
330+ // TODO: REMOVE AFTER 2025-01-01
331+ // this is needed due to cascading delete previously not working
332+ err = svc .db .Exec ("delete from response_events where request_id < ?" , deleteEventsBelowId ).Error
333+ if err != nil {
334+ logger .Logger .WithError (err ).WithFields (logrus.Fields {
335+ "amount" : numEventsToDelete ,
336+ "below_id" : deleteEventsBelowId ,
337+ }).Error ("Failed to delete excess response events" )
338+ return
339+ }
329340}
You can’t perform that action at this time.
0 commit comments