@@ -1,7 +1,5 @@
|
||||
-- Add sync tracking fields to iam_scim_bridges table
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN last_synced_at TIMESTAMP WITH TIME ZONE;
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN next_sync_at TIMESTAMP WITH TIME ZONE DEFAULT NOW();
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN sync_error TEXT;
|
||||
|
||||
-- Create index for efficient polling of bridges due for sync
|
||||
CREATE INDEX idx_iam_scim_bridges_next_sync ON iam_scim_bridges (next_sync_at) WHERE state = 'ACTIVE';
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
-- Add failure tracking columns to iam_scim_bridges table
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN consecutive_failures INTEGER NOT NULL DEFAULT 0;
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN total_sync_count INTEGER NOT NULL DEFAULT 0;
|
||||
ALTER TABLE iam_scim_bridges ADD COLUMN total_failure_count INTEGER NOT NULL DEFAULT 0;
|
||||
|
||||
-- Drop old index and create new one that covers all processable states
|
||||
ALTER TABLE iam_scim_bridges ALTER COLUMN consecutive_failures DROP DEFAULT;
|
||||
ALTER TABLE iam_scim_bridges ALTER COLUMN total_sync_count DROP DEFAULT;
|
||||
ALTER TABLE iam_scim_bridges ALTER COLUMN total_failure_count DROP DEFAULT;
|
||||
|
||||
DROP INDEX IF EXISTS idx_iam_scim_bridges_next_sync;
|
||||
CREATE INDEX idx_iam_scim_bridges_next_sync ON iam_scim_bridges (next_sync_at) WHERE state IN ('ACTIVE', 'FAILED', 'SYNCING');
|
||||
|
||||
Reference in New Issue
Block a user