def snapshot.limited.saved.result
mylsm-lsm-store@0.6.0.1 · src/ByteDurableDb.bend:2387
import mylsm-lsm-store@0.6.0.1/src/ByteDurableDb.bend as ByteDurableDb
import Base
import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable
import mylsm-lsm-store@0.6.0.1/src/ByteSstFile.bend as ByteSstFile
2387def snapshot.limited.saved.result(
2388 handle: Handle,
2389 result: Result<&1, &1, U32 & String, ByteMemTable.Table>
2390) -> IO(Handle & Result<&1, &1, Error, List<&1, ByteMemTable.Entry>>):
2391 match handle:
2392 case Handle{path, lock, ByteMemTable.Table{delta}, state, base_stats}:
2393 match result:
2394 case Fail{(code, message)}:
2395 IO.pure(Handle & Result<&1, &1, Error, List<&1, ByteMemTable.Entry>>,
2396 (Handle{path, lock, ByteMemTable.Table{delta}, state, base_stats},
2397 Fail{recovery.error(code, message)}))
2398 case Done{ByteMemTable.Table{base}}:
2399 IO.pure(Handle & Result<&1, &1, Error, List<&1, ByteMemTable.Entry>>,
2400 snapshot.limited.saved(snapshot.table(path, lock, state, base_stats,
2401 ByteSstFile.entries.clone(ByteMemTable.compact.live(
2402 ByteMemTable.append(delta, base))))))