summaryrefslogtreecommitdiff
path: root/internal/server/handlers/mapcommand.go
AgeCommit message (Collapse)Author
2026-03-10Refactor server-side config singleton readsPaul Buetow
2026-03-02Refactor server path to use injected runtime config (task 329)Paul Buetow
2026-01-29refactor: improve Go best practices compliancePaul Buetow
- Add explicit interface satisfaction checks (var _ Interface = (*Type)(nil)) for compile-time verification: - TurboWriter implementations (DirectTurboWriter, TurboChannelWriter) - Processor implementations (GrepLineProcessor, ChannellessLineProcessor) - Parser implementations (genericParser, csvParser, genericKVParser, custom parsers, mimecastParser) - Logger implementations (file, stdout) - Handler implementations (ServerHandler, ClientHandler) - Connector implementations (Serverless, ServerConnection) - SSH callback implementations (KnownHostsCallback) - Improve error handling with context wrapping (%w): - SSH operations: GeneratePrivateRSAKey, Agent - Query parsing: Query.parse - SSH client connections: dial, session, handle methods - Fix receiver consistency: - Convert Query.String() from value to pointer receiver - Convert Outfile.String() from value to pointer receiver - Convert all KnownHostsCallback methods to pointer receivers - Convert mapCommand.Start() to pointer receiver - Reorganize file structure for better clarity: - internal/io/dlog/dlog.go: Move type definition before public functions - internal/mapr/token.go: Reorganize helper functions after public ones - Add documentation comments: - Query.String() method - Outfile.String() method - Regex.String() method - Improve config variable documentation All unit tests and integration tests pass. Amp-Thread-ID: https://ampcode.com/threads/T-019c0b08-0eeb-705d-a1f7-31bb764b659a Co-authored-by: Amp <amp@ampcode.com>
2025-07-04refactor: change turbo boost to be enabled by defaultPaul Buetow
- Changed environment variable from DTAIL_TURBOBOOST_ENABLE to DTAIL_TURBOBOOST_DISABLE - Changed config field from TurboModeEnable to TurboBoostDisable - Turbo boost is now enabled by default and must be explicitly disabled - Updated all code references, documentation, and examples - No change in functionality, only inverted the boolean logic This makes turbo boost opt-out rather than opt-in, providing better default performance for large files while allowing users to disable it for scenarios where it adds overhead. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-04fix: resolve MapReduce turbo mode issues and serverless processingPaul Buetow
- Fix serverless MapReduce to pass options with map command for proper mode detection - Prevent raw lines from being sent to client during MapReduce operations - Only use turbo mode for cat/grep/tail when no aggregate is present - Fix race conditions in TurboAggregate with proper synchronization - Add SafeAggregateSet wrapper for thread-safe operations - Fix parser selection to use correct parser names - Add comprehensive unit tests for turbo aggregate functionality This ensures MapReduce operations in both turbo and non-turbo modes produce identical results and fixes serverless mode processing. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-03fix: implement thread-safe turbo mode for MapReduce operationsPaul Buetow
- Add SafeAggregateSet wrapper with mutex protection for concurrent access - Implement TurboAggregate for direct line processing without channels - Fix race conditions in turbo mode MapReduce aggregation - Add proper synchronization for batch processing completion - Update shutdown sequence to ensure all data is serialized - Add integration test configuration for high-concurrency scenarios The turbo mode now correctly handles MapReduce queries with significant performance improvements while maintaining data integrity and preventing race conditions during concurrent aggregation. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2021-10-10vetting and linting and some code restylingPaul Buetow
2020-02-28more on scheduled commandsPaul Buetow
2020-02-07Introduce drun command, refactor code to use context packagePaul Bütow