1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-05 17:53:12 +02:00

Fix user/group role primary keys

This commit is contained in:
sjaanus 2022-07-22 19:33:58 +00:00
parent 22014f3c62
commit c0a8c6f9f1
2 changed files with 27 additions and 2 deletions

View File

@ -375,13 +375,13 @@ export class AccessStore implements IAccessStore {
if (userRows.length > 0) {
await tx(T.ROLE_USER)
.insert(userRows)
.onConflict(['project', 'role_id', 'user_id'])
.onConflict(['project', 'user_id'])
.merge();
}
if (groupRows.length > 0) {
await tx(T.GROUP_ROLE)
.insert(groupRows)
.onConflict(['project', 'role_id', 'group_id'])
.onConflict(['project', 'group_id'])
.merge();
}
});

View File

@ -0,0 +1,25 @@
'use strict';
exports.up = function (db, callback) {
db.runSql(
`
ALTER TABLE role_user DROP CONSTRAINT role_user_pkey;
ALTER TABLE role_user ADD PRIMARY KEY (user_id, project);
ALTER TABLE group_role DROP CONSTRAINT group_role_pkey;
ALTER TABLE group_role ADD PRIMARY KEY (group_id, project);
`,
callback,
);
};
exports.down = function (db, callback) {
db.runSql(
`
ALTER TABLE role_user DROP CONSTRAINT role_user_pkey;
ALTER TABLE role_user ADD PRIMARY KEY (user_id, role_id, project);
ALTER TABLE group_role DROP CONSTRAINT group_role_pkey;
ALTER TABLE group_role ADD PRIMARY KEY (group_id, role_id, project);
`,
callback,
);
};