Fix typo in lock levels
Signed-off-by: Klaus Aehlig <aehlig@google.com>Reviewed-by: Petr Pudlak <pudlak@google.com>
Add a convenience function to release locks by property
While definable from listLocks and updateLocks, it is convenientto be able to all locks with a given property. This will, e.g.,allow to release all locks at a given level---as the mcpu doesroutinely....
BGL is not a set lock
Despite what the name suggests, the Big Ganeti Lock does not act as aset of all locks. It is just a lock as any other lock from the pointof view of the Ganeti lock hierarchy.
It's special meaning comes from the fact that all jobs, except for...
For each Ganeti Lock provide its level
...so set a job can request operations on all its locks of a given level.
Add network locks to Haskell
Ganeti also has a lock level for networks, however this level was forgottenwhen the Ganeti lock hierarchy was implemented in Haskell.
Fix allocation order of locks
The correct allocation order for node-related Ganeti locks isallocation, group, the node itself, resources.
Allow transitions from sets to elements
Owning a set-lock has the same effect as owning each member. So askingfor a member while already holding the set lock in the same mode (sharedor exclusive) is, effectively, no asking for new locks. Therefore, do not...
Fix typo
Add a function to determine the lock owners
To allow for clean up, add a function that provides the listof all the owners holding at least one lock.
Provide an asynchronous task for writing lock status
It will be used to persist the state of the lock allocation ondisk, allowing locks to survive reboots of WConfD.
View revisions
Also available in: Atom