lsmbench

command
v4.9.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2026 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

lsmbench is a bulk-load LSM benchmark used to detect compaction performance regressions (issue #2327). It recreates the reproducer from that issue: ~300M small entries written through db.Update in batches of 5000 against default options, keys spread across several top-level prefixes.

It intentionally uses only badger's public API so the same harness can be compiled against any badger version (the module's replace directive points at the working tree; CI repoints it at a baseline checkout to compare the two on identical hardware).

Beyond wall time, it tracks the structural signature of the #2327 regression, which is hardware-independent:

  • the base level must not collapse to L1/L2 once the tree is large (healthy: L3+; broken: pinned at L1 from ~170M entries onward), and
  • lifetime L0 write stalls must stay near zero (healthy: 0s; broken: ~1-2 minutes at this scale).

Exit code is non-zero if any enabled gate fails. The final line of output is machine-readable:

LSMBENCH_RESULT wall_ms=... stall_ms=... min_base=... final_base=... lsm_mb=... entries=...

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL