Skip to content

Commit e1d9c79

Browse files
authored
fix: remove event deletion from migration (#1503)
1 parent fb67e80 commit e1d9c79

File tree

2 files changed

+14
-18
lines changed

2 files changed

+14
-18
lines changed

db/migrations/202508041712_delete_non_cascade_deleted_records.go

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff 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
2625
WHERE 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

service/service.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff 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
}

0 commit comments

Comments
 (0)