• Eric Cano's avatar
    Fixed racy implementation of BackendRados::lock{Exclusive|Shared}() · aa56a1c3
    Eric Cano authored
    As rados re-creates an object when trying to lock it, we tested for presence before locking.
    This is racy as object could be deleted in the mean time.
    Instead, we now lock blindly and delete the object if we find it having a zero-size.
    As we own the lock, this is safe.
    
    This problem led to issues in garbage colector, where agent gets polled while it could disappear.
    aa56a1c3