Purge orphan sync queue entries before push
This commit is contained in:
@@ -474,6 +474,16 @@ func (l *LocalDB) MarkChangesSynced(ids []int64) error {
|
||||
return l.db.Where("id IN ?", ids).Delete(&PendingChange{}).Error
|
||||
}
|
||||
|
||||
// PurgeOrphanConfigurationPendingChanges removes configuration pending changes
|
||||
// whose entity_uuid no longer exists in local_configurations.
|
||||
func (l *LocalDB) PurgeOrphanConfigurationPendingChanges() (int64, error) {
|
||||
tx := l.db.Where(
|
||||
"entity_type = ? AND entity_uuid NOT IN (SELECT uuid FROM local_configurations)",
|
||||
"configuration",
|
||||
).Delete(&PendingChange{})
|
||||
return tx.RowsAffected, tx.Error
|
||||
}
|
||||
|
||||
// GetPendingCount returns the total number of pending changes (alias for CountPendingChanges)
|
||||
func (l *LocalDB) GetPendingCount() int64 {
|
||||
return l.CountPendingChanges()
|
||||
|
||||
Reference in New Issue
Block a user