def wal.locked.present
mylsm-lsm-store@0.6.0.1 · src/transfer/MigrateIo.bend:801
import mylsm-lsm-store@0.6.0.1/src/transfer/MigrateIo.bend as MigrateIo
import Base
import mylsm-lsm-store@0.6.0.1/src/DbLock.bend as DbLock
import mylsm-lsm-store@0.6.0.1/src/Fs.bend as Fs
import mylsm-lsm-store@0.6.0.1/src/MemTable.bend as MemTable
801def wal.locked.present(
802 lock: DbLock.Lock,
803 present: Bool,
804 +path: String,
805 records: List<&2, MemTable.Entry>
806) -> IO(TableValidation):
807 match present:
808 case False{}:
809 IO.pure(TableValidation,
810 table.validation.snapshot(lock, path, Done{(0n, 0n)}, records, Nil{}))
811 case True{}:
812 do IO<TableValidation>:
813 size : Result<&1, &1, U32 & String, Nat> <- Fs.file_size(path ++ "/WAL")
814 wal.locked.size.result(lock, size, path, records)