NimbusKV v3.1.1 Documentation
Official architecture guide and reference: lock-free reads, write mutex concurrency, TTL scheduling, and reactive subscriptions.
This is a patch release. For the complete API and architecture documentation, see v3.1.0.
Changes from v3.1.0#
NimbusKV v3.1.1 fixes a memory-growth issue in the TTL scheduler. Repeatedly rescheduling a long-lived TTL on the same key used to leave stale entries in the scheduler heap until their original deadlines arrived. The scheduler now compacts the heap when its size exceeds twice the number of live TTLs plus 64 entries, retaining only the current schedule for each key.
The public API is unchanged. See the changelog for the release note and regression-test details.
Credit#
The issue was found during code review before v3.1.0 was tagged or published. The regression test covers 5,000 reschedules of one key and verifies the heap stays below 200 entries.