def get.sst.generation.file.paths

mylsm-lsm-store@0.6.0.1 · src/ByteDurableDb.bend:1222

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/DbLock.bend as DbLock
import mylsm-lsm-store@0.6.0.1/src/Fs.bend as Fs
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes

1222def get.sst.generation.file.paths(
1223  files: String & String,
1224  retained_path: String,
1225  lock: DbLock.Lock,
1226  table: ByteMemTable.Table,
1227  keys: Bytes.Bytes & Bytes.Bytes
1228) -> IO(Handle & Result<&1, &1, Error, Maybe<&1, Bytes.Bytes>>):
1229  match files:
1230    case (size_path, cursor_path):
1231      match keys:
1232        case (lower, query):
1233          do IO<Handle & Result<&1, &1, Error, Maybe<&1, Bytes.Bytes>>>:
1234            size : Result<&1, &1, U32 & String, Nat> <- Fs.file_size(size_path)
1235            get.sst.sized((cursor_path, retained_path), lock, table,
1236              (lower, query), size)

Uses (16)

Used by (1)