bend-kit-journal
Search uses release 0.3.1.0 · 65 definitions
Definitions (65)
- type TailClean: the input ends on a frame boundary.
- type StepOne decoding step.
- type RecoveryThe committed records in order, how the input ends, and the input from the first frame not taken.
- type ReplayThe state after every committed record, how the input ends, and the input from the first frame not taken.
- def next.verdict
- def next.summed
- def next.cut
- def next.want
- def next.body
- def next.size
- def next.head
- def next.lenx
- def next.len
- def next.startThe two length fields are checked before the payload is waited for, so a damaged length is Bad and never a Torn tail that hides the frames after it.
- def next.any
- def nextOne frame from s.
- def recover.con
- def recover.goEvery frame from st on.
- def recoverEvery committed record of s, in order.
- def replay.gostep folded over every frame from st on, without a list of the records.
- def replay
- def list.fits
- def list.field
- def list.u32
- def list.cut
- def list.skip
- def crc.bit
- def crc.go
- def list.crcCRC-32 (ISO-HDLC, as zlib and Hash.crc32) of a list of octets, bit by bit.
- def list.sum
- def list.next
- def list.recover
- def list.replay
- def list.head
- def list.frame
- def list.logThe frames of rs, one after another: what appending each record writes.
- type CurThe Bytes instance.
- def cur.fits
- def cur.field
- def cur.u32.fin
- def cur.u32
- def cur.cut.fin
- def cur.cut
- def cur.skip
- def cur.sumponytail: Hash.crc32 builds its 256-entry table per record; share one table if recovery gets hot.
- def fuelEvery frame of b holds at least 12 octets, so len / 12 + 1 steps reach the end.
- def replay.bytesstep folded over every committed record of b, in order.
- def frame.of
- def frameThe frame that appending p writes.
- def open.wordsOpens path for reading and appending, creating it, and fsyncs its directory.
- def append.wordsWrites len octets of words at the end of file, then fsyncs it.
- def truncateCuts file to len octets, then fsyncs it.
- type JournalAn open journal.
- def open.cut
- def open.tail
- def open.replayed
- def open.read
- def openOpens the journal at path and folds step over its committed records, from acc.
- def append.back
- def append.write
- def append.refuse
- def append.sizeThe file stays under 4 GiB, so every offset and the next open's read fit a U32.
- def append.ok
- def appendAppends p as one frame and answers once it is fsynced: Done means durable, under the trust assumptions in README.md.
- def close