Skip to content

Conversation

mastercactapus
Copy link
Member

Description:
This PR fixes a number of deadlock issues around rotations by introducing some rather aggressive locks.

This is necessary until we can remove the dependency on triggers that cause different locking orders resulting in deadlocks depending on what changes happen when.

Any changes to rotation participants or state (including deleting a user) now acquire locks on both rotation_participants and rotation_state first, in the same order, before being allowed to continue.

Additionally, a bug was fixed that prevented deleting a user if they were the last member of a rotation and currently active.

@mastercactapus mastercactapus requested a review from KatieMSB July 6, 2022 16:08
@mastercactapus mastercactapus merged commit 7b509a6 into master Jul 6, 2022
@mastercactapus mastercactapus deleted the rotation-deadlock-fix branch July 6, 2022 19:29
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.

3 participants