Skip to content

feat(pebblekv): expose MemTableSize/MemTableStopWritesThreshold on Op… - #115

Merged
codetrek merged 1 commit into
mainfrom
feat/pebblekv-memtable-opts
Jul 14, 2026
Merged

feat(pebblekv): expose MemTableSize/MemTableStopWritesThreshold on Op…#115
codetrek merged 1 commit into
mainfrom
feat/pebblekv-memtable-opts

Conversation

@codetrek

Copy link
Copy Markdown
Collaborator

…enOptions

The memtable knobs were hardcoded (4 MiB / 2), which fragments a cold bulk index build into hundreds of tiny L0 files and drives a compaction storm that dominates cold-build wall-clock. Expose both on OpenOptions so a caller that knows its workload can enlarge the memtable; zero keeps the conservative built-in defaults and a sub-2 threshold is clamped to 2 (Pebble requires >= 2), so existing callers are unchanged.

…enOptions

The memtable knobs were hardcoded (4 MiB / 2), which fragments a cold bulk
index build into hundreds of tiny L0 files and drives a compaction storm that
dominates cold-build wall-clock. Expose both on OpenOptions so a caller that
knows its workload can enlarge the memtable; zero keeps the conservative
built-in defaults and a sub-2 threshold is clamped to 2 (Pebble requires >= 2),
so existing callers are unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@codetrek
codetrek merged commit 50f3ac7 into main Jul 14, 2026
4 checks passed
@codetrek
codetrek deleted the feat/pebblekv-memtable-opts branch July 14, 2026 07:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants