fix(migrations): include client_id in platform account unique index
Why: prior migration created the workspace identity unique index without client_id, so accounts on the same workspace+platform+uid couldn't coexist across desktop clients. Also drop the legacy uk_platform_accounts_identity_active index so re-runs are idempotent. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -53,7 +53,7 @@ CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_desktop_id
|
|||||||
ON platform_accounts (desktop_id);
|
ON platform_accounts (desktop_id);
|
||||||
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
||||||
ON platform_accounts (workspace_id, platform_id, platform_uid)
|
ON platform_accounts (workspace_id, client_id, platform_id, platform_uid)
|
||||||
WHERE deleted_at IS NULL;
|
WHERE deleted_at IS NULL;
|
||||||
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_platform_accounts_client_id
|
CREATE INDEX IF NOT EXISTS idx_platform_accounts_client_id
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
|
DROP INDEX IF EXISTS uk_platform_accounts_identity_active;
|
||||||
DROP INDEX IF EXISTS uniq_platform_accounts_workspace_identity_active;
|
DROP INDEX IF EXISTS uniq_platform_accounts_workspace_identity_active;
|
||||||
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
||||||
ON platform_accounts (workspace_id, platform_id, platform_uid)
|
ON platform_accounts (workspace_id, client_id, platform_id, platform_uid)
|
||||||
WHERE deleted_at IS NULL;
|
WHERE deleted_at IS NULL;
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
DROP INDEX IF EXISTS uk_platform_accounts_identity_active;
|
||||||
DROP INDEX IF EXISTS uniq_platform_accounts_workspace_identity_active;
|
DROP INDEX IF EXISTS uniq_platform_accounts_workspace_identity_active;
|
||||||
|
|
||||||
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
CREATE UNIQUE INDEX IF NOT EXISTS uniq_platform_accounts_workspace_identity_active
|
||||||
|
|||||||
Reference in New Issue
Block a user