summaryrefslogtreecommitdiff
path: root/internal/io/fs/readfile_processor.go
AgeCommit message (Collapse)Author
2026-03-13Stop stale query work promptly on generation cancelPaul Buetow
2026-03-10Refactor server-side config singleton readsPaul Buetow
2026-03-08task: propagate dropped processing and flush errors (task 379)Paul Buetow
2026-03-08task: close compressed readers in file read paths (task 377)Paul Buetow
2026-03-08task: harden truncate signal lifecycle in processor readers (task 372)Paul Buetow
2025-06-28feat: implement channel-less grep for 62% performance improvementPaul Buetow
- Add LineProcessor interface for direct line processing without channels - Implement channel-less file reading in readfile_processor.go - Add optimized reader with 256KB buffering for efficient I/O - Create GrepLineProcessor for direct writing without intermediate channels - Fix serverless mode hanging due to stdin pipe detection - Fix base64 decoding bug (was counting characters instead of arguments) - Fix message output formatting by adding proper newline handling Performance improvements: - Channel-based: 9.00s → Channel-less: 3.42s (62% faster on 100MB files) - Removed channel synchronization overhead and context switching - Reduced memory allocations with buffer pooling Environment variables: - DTAIL_CHANNELLESS_GREP=yes - Enable channel-less implementation - DTAIL_OPTIMIZED_READER=yes - Use optimized buffered reader Known limitation: Inverted grep with context (--invert with --before/--after) not fully implemented in channel-less mode. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>