BEGIN; DROP TABLE IF EXISTS runtime_config_rollout; DROP TABLE IF EXISTS ops_device_group_member; DROP TABLE IF EXISTS ops_device_group; DROP TABLE IF EXISTS ops_config_evaluation; DROP TABLE IF EXISTS ops_resource_reference; WITH ranked AS ( SELECT id,row_number() OVER (PARTITION BY tenant_id,config_key ORDER BY version_no DESC,id DESC) AS position FROM runtime_config_version WHERE status='PUBLISHED' ) UPDATE runtime_config_version rcv SET status='RETIRED',retired_at=COALESCE(retired_at,now()),row_version=row_version+1,updated_at=now() FROM ranked WHERE ranked.id=rcv.id AND ranked.position>1; CREATE UNIQUE INDEX runtime_config_one_published_key ON runtime_config_version(tenant_id,config_key) WHERE status='PUBLISHED'; COMMIT;