def source.tables.present

mylsm-lsm-store@0.6.0.1 · src/transfer/MigrateIo.bend:860

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

860def source.tables.present(
861  sst: Nat & Nat,
862  sst_records: List<&2, MemTable.Entry>,
863  lock: DbLock.Lock,
864  paths: String & String
865) -> IO(Result<&1, &1, Error, SourceSnapshot>):
866  match paths:
867    case (exists_path, validation_path):
868      do IO<Result<&1, &1, Error, SourceSnapshot>>:
869        present : Result<&1, &1, U32 & String, Bool> <-
870          Fs.exists(exists_path ++ "/WAL")
871        wal : TableValidation <- wal.locked.exists(lock, present,
872          validation_path, sst_records)
873        source.wal.validated(sst, wal)

Uses (19)

Used by (1)