Project

General

Profile

Actions

Story #18693

open

Deduplicate permission links

Added by Peter Amstutz 10 months ago. Updated 3 days ago.

Status:
New
Priority:
Normal
Assigned To:
Category:
API
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
(Total: 0.00 h)
Story points:
2.0

Description

It's confusing and potentially error prone to have multiple identical permission links, e.g. three link records all granting "can_read" going from the same user to the same project. For example, there's 50 users with read access to a project, but one user is listed 3 times. Someone goes it to remove that user's access, but only deletes one or two of the links, not all three.

Proposed change:

conflicting: permission link between the same head/tail where both permissions are either (can_read, can_write, can_login) or (can_login)

should take a row lock on the permission link when doing these operations.

  • "create" command
    • if there is a conflicting permission link and the existing link has lower permission, update the existing permission link and return that
    • if there is a conflicting permission link and the existing link has same or higher permission, do nothing and return the existing link
  • "update" command
    • if a link is updated so it conflicts with another permission link, delete the other conflicting link (this shouldn't happen because there shouldn't be more than one link)
  • "delete" command
    • delete doesn't change because there shouldn't be multiple conflicting links, but if there are, they should all get deleted
  • perform a data migration to remove any duplicated links

Subtasks 1 (1 open0 closed)

Task #19810: ReviewNewBrett Smith

Actions

Related issues

Related to Arvados - Bug #19057: [controller] should not allow adding the same user+login to a VM more than one timeNewTom Clegg

Actions
Actions #1

Updated by Peter Amstutz 10 months ago

  • Status changed from New to In Progress
Actions #2

Updated by Peter Amstutz 10 months ago

  • Description updated (diff)
Actions #3

Updated by Peter Amstutz 10 months ago

  • Status changed from In Progress to New
  • Tracker changed from Bug to Story
Actions #5

Updated by Peter Amstutz 9 months ago

  • Category set to API
Actions #6

Updated by Peter Amstutz 9 months ago

  • Description updated (diff)
Actions #8

Updated by Peter Amstutz 7 months ago

  • Target version set to 2022-06-08 sprint
Actions #9

Updated by Ward Vandewege 7 months ago

  • Related to Bug #19057: [controller] should not allow adding the same user+login to a VM more than one time added
Actions #10

Updated by Peter Amstutz 7 months ago

  • Target version changed from 2022-06-08 sprint to 2022-06-22 Sprint
Actions #11

Updated by Peter Amstutz 6 months ago

  • Description updated (diff)
Actions #12

Updated by Peter Amstutz 6 months ago

  • Description updated (diff)
Actions #13

Updated by Peter Amstutz 6 months ago

  • Description updated (diff)
Actions #14

Updated by Peter Amstutz 6 months ago

  • Target version changed from 2022-06-22 Sprint to 2022-07-06
Actions #15

Updated by Peter Amstutz 6 months ago

  • Target version changed from 2022-07-06 to 2022-07-20
Actions #16

Updated by Peter Amstutz 5 months ago

  • Target version changed from 2022-07-20 to 2022-08-03 Sprint
Actions #17

Updated by Peter Amstutz 5 months ago

  • Target version changed from 2022-08-03 Sprint to 2022-08-17 sprint
Actions #18

Updated by Peter Amstutz 4 months ago

  • Target version changed from 2022-08-17 sprint to 2022-08-31 sprint
Actions #19

Updated by Peter Amstutz 4 months ago

  • Target version changed from 2022-08-31 sprint to 2022-09-14 sprint
Actions #20

Updated by Peter Amstutz 3 months ago

  • Target version changed from 2022-09-14 sprint to 2022-09-28 sprint
Actions #21

Updated by Peter Amstutz 3 months ago

  • Target version changed from 2022-09-28 sprint to 2022-10-12 sprint
Actions #22

Updated by Peter Amstutz 2 months ago

  • Target version changed from 2022-10-12 sprint to 2022-10-26 sprint
Actions #23

Updated by Peter Amstutz about 2 months ago

  • Target version changed from 2022-10-26 sprint to 2022-11-09 sprint
Actions #24

Updated by Peter Amstutz about 1 month ago

  • Target version changed from 2022-11-09 sprint to 2022-11-23 sprint
Actions #25

Updated by Peter Amstutz about 1 month ago

  • Target version changed from 2022-11-23 sprint to 2022-12-07 Sprint
Actions #26

Updated by Peter Amstutz 30 days ago

  • Target version changed from 2022-12-07 Sprint to 2022-12-21 Sprint
Actions #27

Updated by Peter Amstutz 17 days ago

  • Target version changed from 2022-12-21 Sprint to 2023-01-18 sprint
Actions #28

Updated by Peter Amstutz 16 days ago

  • Target version changed from 2023-01-18 sprint to 2022-12-07 Sprint
Actions #29

Updated by Peter Amstutz 16 days ago

  • Assigned To set to Tom Clegg
Actions #30

Updated by Tom Clegg 9 days ago

  • Story points set to 2.0
Actions #31

Updated by Tom Clegg 3 days ago

  • Target version changed from 2022-12-07 Sprint to 2022-12-21 Sprint
Actions

Also available in: Atom PDF