MCPcopy
hub / github.com/borgbackup/borg / release

Method release

src/borg/fslocking.py:448–458  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

446 raise LockTimeout(self.path)
447
448 def release(self):
449 if self.is_exclusive:
450 self._roster.modify(EXCLUSIVE, REMOVE)
451 if self._roster.empty(EXCLUSIVE, SHARED):
452 self._roster.remove()
453 self._lock.release()
454 else:
455 with self._lock:
456 self._roster.modify(SHARED, REMOVE)
457 if self._roster.empty(EXCLUSIVE, SHARED):
458 self._roster.remove()
459
460 def upgrade(self):
461 # WARNING: if multiple read-lockers want to upgrade, it will deadlock because they

Callers 5

__exit__Method · 0.95
test_not_lockedMethod · 0.95

Calls 3

modifyMethod · 0.80
emptyMethod · 0.45
removeMethod · 0.45

Tested by 3

test_not_lockedMethod · 0.76