def measure_key_result

mylsm-lsm-store@0.6.0.1 · src/scan/ByteBlockReader.bend:940

import mylsm-lsm-store@0.6.0.1/src/scan/ByteBlockReader.bend as ByteBlockReader
import Base
import mylsm-lsm-store@0.6.0.1/src/ByteWal.bend as ByteWal
import mylsm-lsm-store@0.6.0.1/src/Wal.bend as Wal

940# Handles measure key result.
941def measure_key_result(
942  result: Result<&1, &1, Wal.Error, ByteWal.ValueMetadata>
943) -> Result<&1, &1, U32 & String, ByteWal.ValueMetadata>:
944  match result:
945    case Done{value}: Done{value}
946    case Fail{Wal.ChecksumMismatch{}}:
947      Fail{corruption("byte SST block checksum mismatch")}
948    case Fail{Wal.Malformed{}}:
949      Fail{corruption("malformed byte SST metadata")}
950    case Fail{Wal.TooLarge{}}:
951      Fail{corruption("byte SST metadata exceeds decoder bounds")}
952    case Fail{Wal.InvalidUtf8{}}:
953      Fail{corruption("byte SST metadata contains invalid text")}

Uses (7)

Used by (1)