9baec5ab69d920bfabc8c4c561d05ed10e465e61
The reader's line_index and file_size were frozen at open time. After current_line exceeded the initial 150K lines, get_line_impl returned None for all subsequent reads. With the background thread appending ~10K lines/sec, ~40% of measured frame latencies were actually the cost of a None return, not real I/O. - Add PreadReaderCore::refresh_index(&mut self): seek to start, rebuild LineIndex, update file_size, invalidate read cache - Add PreadReaderPlain::refresh_index forwarding method - Add ReadCache::invalidate to force cache miss after reindex - Rewrite bench_scroll_during_append: time-based refresh (250ms), only record latencies for successful reads, assert max_line > initial - Add regression tests for refresh_index with appended lines
Description
No description provided
Languages
Rust
100%