Skip to content

take a more passive approach to lock management#69

Merged
eliknebel merged 1 commit intomasterfrom
AUTHORING-2268-lock-timeout
Jun 15, 2020
Merged

take a more passive approach to lock management#69
eliknebel merged 1 commit intomasterfrom
AUTHORING-2268-lock-timeout

Conversation

@darrensiegel
Copy link
Copy Markdown
Contributor

This PR adjusts the lock management approach to remove the server cleanup of expired locks, with the net result that a user will only ever see the "This editing session has expired" if another user has acquired the lock after the five minute expiration period.

With this PR in place I have tested to ensure the following scenarios work correctly:

Scenario A: Extended Locks:

  1. User A acquires a lock and makes some edits
  2. User A walks away from computer for any amount of time exceeding 5 minutes, leaving the editor open
  3. User A returns and makes another edit. The logic detects that an existing expired lock from the same user is present so it simply allows that lock to be updated and the user can continue to make edits.

Scenario B: Expired Lock acquisition:

  1. User A acquires a lock and makes some edits
  2. User A walks away from computer
  3. More than five minutes after User A's last edit, User B attempts to edit the page. The logic determines that the lock has expired and gives the lock to User B
  4. User A returns and attempts to make an edit, but then receives the "This edit session has expired" message. They refresh and then see that User B has the resource locked.

Scenario C: Locked

  1. User A acquires a lock and makes some edits
  2. User B attempts to edit the same resource but sees that the resource is locked by User A.

@eliknebel eliknebel merged commit c99169e into master Jun 15, 2020
@eliknebel eliknebel deleted the AUTHORING-2268-lock-timeout branch June 15, 2020 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants