Skip to content

Improve resource locking scheme in operations.

This MR introduces the following changes to the way operations lock resources:

  1. Introduces a parent-child relationship between operations where a "child" operation that is being run by its "parent" can share resource locks with the parent.

  2. In the event that an operation cannot acquire ALL of its required resource locks, it will release any resource locks it did successfully acquire and then retry later. This gives each thread that is currently attempting to acquire resource locks a chance to do so.

Merge request reports