def wait.exhausted

mylsm-lsm-store@0.6.0.1 · src/DbLock.bend:249

import mylsm-lsm-store@0.6.0.1/src/DbLock.bend as DbLock
import Base
import mylsm-lsm-store@0.6.0.1/src/DurableError.bend as DurableError

249# Closes a handle if the finite retry budget is unexpectedly exhausted.
250def wait.exhausted(state: WaitState) -> IO(Result<&1, &1, DurableError.Error, Lock>):
251  match state:
252    case TryLock{file, _, _, _, operation, path}:
253      wait.timeout(file, operation, path)
254    case LockAttempt{pair, _, _, _, operation, path}:
255      match pair:
256        case (file, _):
257          wait.timeout(file, operation, path)
258    case ReadClock{file, _, _, _, operation, path, _}:
259      wait.timeout(file, operation, path)
260    case ClockSample{file, _, _, _, operation, path, _, _}:
261      wait.timeout(file, operation, path)
262    case Pause{file, _, _, _, operation, path, _}:
263      wait.timeout(file, operation, path)
264    case PauseResult{file, _, _, _, operation, path, _}:
265      wait.timeout(file, operation, path)
266    case WaitFatal{file, _, operation, path}:
267      wait.timeout(file, operation, path)
268    case WaitExpired{file, operation, path}:
269      wait.timeout(file, operation, path)

Uses (7)

Used by (1)