What litedb-org/LiteDB shipped
Written by FoxPlug from public releases; not affiliated with Litedb. An automatic summary of the public release, pull request and commit data of github.com/litedb-org/LiteDB. Litedb did not write it and does not use or endorse FoxPlug. Every line links to the public change it describes.
Get a weekly update like this for your product, free
Week of September 21, 2026
What shipped
- Shared mode now retains read-only snapshots across repeated queries and avoids reopening under the database mutex, with automatic optimization on .NET 8+ and a production fallback. Pull request #3016
- Shared-mode hardening and performance improvements added, including native fsync, faster writes, and an experimental coordinator mode. Pull request #3003
- Shared operations reduced mutex handoffs and now reuse reader lease slots with scoped ownership and a cross-process turnstile for pinned writers. Pull request #3013
- Version 13 snapshot-aware checkpoints and verified WAL slot reuse allow checkpoint to backfill safe pages while readers retain original snapshots. Pull request #3000
- Compact document storage added with lazy v12 promotion to reduce storage consumed by repeated field names and BSON array index strings. Pull request #2999
- CRC32C checksums added for WAL frames and data pages to verify complete transactions and protect checkpoint publication against partial writes. Pull request #2998
- Systematic fuzzing infrastructure added with the deterministic LiteDB.Fuzz runner for reproducible differential, model-based, corruption, recovery, and crash fuzzing. Pull request #2951
- PR CI workflow reduced from 47 jobs to 6 runnable jobs covering Linux and Windows with .NET 8, .NET 10, and .NET Framework 4.8.1. Pull request #2964
Why it matters
This week focused on performance and reliability in shared mode, storage efficiency improvements, and a major addition of systematic fuzzing infrastructure. The checksum and checkpoint work strengthens crash safety, while the compact storage format reduces overhead for typical workloads.
Changelog entry
- Shared: Restore mapped reads with bounded writer pressure to retain snapshots across repeated queries Pull request #3016
- Shared: Add native fsync, faster writes, and experimental coordinator mode Pull request #3003
- Shared: Reduce mutex handoffs and reuse reader lease slots with scoped ownership Pull request #3013
- Shared: Optimize reader-slot selection with bounded free list instead of scan Pull request #3014
- Add v13 snapshot-aware checkpoints and verified WAL slot reuse Pull request #3000
- Add compact document storage with lazy v12 promotion and transactional schema pages Pull request #2999
- Add CRC32C checksums for WAL recovery and data page verification Pull request #2998
- Add systematic fuzzing infrastructure with deterministic LiteDB.Fuzz runner Pull request #2951
- Reduce PR CI jobs from 47 to 6 runnable jobs Pull request #2964
LiteDB dev: shared-mode snapshot retention, compact document storage, v13 checksums and verified WAL recovery, plus deterministic fuzzing infrastructure for reproducible testing.
LiteDB development this week focused on shared-mode performance, storage efficiency, and crash safety. Read snapshots now persist across queries, compact storage reduces field-name overhead, CRC32C checksums verify WAL recovery, and new deterministic fuzzing catches concurrency and recovery issues. These changes improve both performance and reliability for typical workloads.
Week of September 14, 2026
What shipped
- Borrowed BSON execution and late materialization reduces allocations by deferring document materialization until after residual filters reject candidates. Pull request #2910
- Shared query IR with optimizations for both LINQ and SQL execution paths, building on audited prior work. Pull request #2944
- One BsonMapper per database context prevents unrelated databases from sharing mutable mapper state. Pull request #2949
- 28 bugfixes covering BSON conversion, JSON handling, mapper dispatch, query projection, and index operations. Pull request #2916
- 47 additional bugfixes addressing query binding, LINQ translation, dictionary mapping, string comparison, and scan behavior. Pull request #2917
- 14 independent storage and transaction bugfixes including durable WAL commits, encryption rebuild, and validation before tail repair. Pull request #2918
- Dropping secondary indexes now properly reclaims pages back to free-page lists. Pull request #2955
- Deleted pages persisted before commit now correctly link their tail to the prior head during transaction safepoints. Pull request #2956
- Scalar range comparisons now honor the active execution collation. Pull request #2943
- Guid and ObjectId serialization now uses spans to eliminate per-call allocations. Pull request #2697
Why it matters
This week shipped major correctness fixes from a comprehensive fuzzing and audit effort, including storage integrity repairs, transaction safety improvements, and memory allocation reductions. The work addresses fundamental issues in query execution, mapper isolation, and page management that affect reliability across the database.
Changelog entry
- Query: Borrowed BSON execution with late materialization reduces allocations for residual filters Pull request #2910
- API: LiteDatabase now uses one BsonMapper per context instead of shared global instance Pull request #2949
- Storage: Dropping secondary indexes now reclaims pages to free-page lists Pull request #2955
- Storage: Deleted pages persisted before commit now correctly link to prior head Pull request #2956
- Query: Unified query IR for optimized LINQ and SQL execution Pull request #2944
- Query: Scalar range comparisons honor execution collation Pull request #2943
- Fix: 28 BSON, JSON, mapper, projection, and index handling issues Pull request #2916
- Fix: 47 query binding, LINQ translation, and scan behavior issues Pull request #2917
- Fix: 14 storage and transaction bugfixes including durable WAL and encryption Pull request #2918
- Perf: Guid and ObjectId serialization now uses spans, eliminating per-call allocations Pull request #2697
- Docs: Corrected root BSON size limit documentation and explained embedded document counting Pull request #2911
- Fix: SQL REBUILD without options no longer throws NullReferenceException Pull request #2915
- API: BsonValue.AsArray and AsDocument now support CLR array, list, and dictionary inputs Pull request #2755
- Perf: ObjectId hex formatting optimized with stack-allocated buffers Pull request #2698
- CI: Added test coverage for legacy .NET Framework targets (net462, net481) Pull request #2903
LiteDB this week: fixed storage integrity bugs from fuzzing, optimized query execution with late materialization, isolated database mapper instances, and reduced allocations in serialization.
LiteDB development this week focused on correctness and performance fundamentals. Storage integrity repairs fix page reclamation and transaction safety bugs uncovered by fuzzing. Query execution now defers document materialization until after filtering, reducing allocations. Database instances now maintain isolated mapper state instead of sharing mutable global state. Serialization paths for GUIDs and ObjectIds now use stack-allocated spans. The changes span 28 safe fixes, 47 additional fixes, and 14 independent storage/transaction bugfixes.