mirror of
https://github.com/hanzoai/team.git
synced 2026-09-30 01:57:35 +00:00
* MM-63848: Enforce unique names for parent access control policies * Revert accidental package-lock.json change * fix translation file * Fix lint shadows, migration overflow, and unique constraint fallback * Remove pre-check, combine migrations, fix overflow * Combine migrations using regular CREATE INDEX * add missing translation * kip revision bump on policy name-only changes and add test to cover this scenario * MM-63848: Fix tx commit on name-only update, unique test names --------- Co-authored-by: Mattermost Build <[email protected]> Co-authored-by: Hanzo Dev <[email protected]>
14 lines
615 B
SQL
14 lines
615 B
SQL
-- Deduplicate parent policy names before adding unique constraint.
|
|
-- The oldest policy (by CreateAt) keeps its original name; duplicates get ' (<id>)' appended.
|
|
UPDATE AccessControlPolicies AS p
|
|
SET Name = LEFT(p.Name, 128 - LENGTH(' (' || p.ID || ')')) || ' (' || p.ID || ')'
|
|
FROM (
|
|
SELECT ID, Name, ROW_NUMBER() OVER (PARTITION BY Name ORDER BY CreateAt ASC) AS rn
|
|
FROM AccessControlPolicies
|
|
WHERE Type = 'parent'
|
|
) AS dupes
|
|
WHERE p.ID = dupes.ID
|
|
AND dupes.rn > 1;
|
|
|
|
CREATE UNIQUE INDEX IF NOT EXISTS idx_accesscontrolpolicies_name_type ON AccessControlPolicies (Name, Type) WHERE Type = 'parent';
|