Repository navigation
v0.15.0
·
101 commits
to master
since this release
Immutable
release. Only release title and notes can be modified.
New features:
- read_log_lines_capped reads with a caller-set byte bound, so one absurdly long physical line — a collided write or a long verbatim record — no longer sets a reader's peak memory. Every line past the bound is reported with its full length, so nothing is dropped silently. read_log_line_capped exposes the same primitive to a reader owning its loop, such as a tail follower.
- LogStream::max_attached_bytes bounds the continuation lines one entry may hold. A line past the budget is reported as ParseWarning::AttachedOverflow and counted in ParseStats::lines_dropped, the path an unaddressable line already took.
- AttachedLines::byte_len reports what an entry's attached lines occupy.
- fslog reads with a 1 MiB line cap by default, overridable with --max-line-bytes. Over-cap lines are warned once as they happen, then summarized per file with a count and the largest length seen.
Build:
- The uncapped and capped readers share one read loop and reuse a single byte buffer across lines, instead of allocating one per line.