Repository navigation
v0.6.21
Fix: SQLite Database Locking for Concurrent Connections
This release resolves the "database is locked" errors that occurred when running multiple ccdash instances or when external tools queried the database.
Changes
- Increased busy_timeout from 5s to 30s for better lock handling
- Added connection pool settings optimized for SQLite
- Implemented retry logic with exponential backoff for all database operations
- Added context with timeout support for all database methods
- Added WAL mode optimizations:
- 64MB cache size
- 256MB memory-mapped I/O
- Temp tables stored in memory
- WAL checkpoint and journal size limits
- Improved error propagation in file ingestion
The database now properly handles multiple concurrent ccdash instances using SQLite WAL mode with appropriate locking strategies and automatic retries.