ethdb/pebble: Fix MemTableStopWritesThreshold (#26692)

MemTableStopWritesThreshold was set to the max size of all memtables before blocking writing but should be set to the max number of memtables. This is documented [here](https://github.com/cockroachdb/pebble/blob/master/options.go#L738-L742).
This commit is contained in:
Patrick O'Grady 2023-02-15 00:27:52 -08:00 committed by GitHub
parent dbd6c1324d
commit 5967a2290a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -157,7 +157,10 @@ func New(file string, cache int, handles int, namespace string, readonly bool) (
// MemTableStopWritesThreshold places a hard limit on the size
// of the existent MemTables(including the frozen one).
MemTableStopWritesThreshold: memTableLimit * memTableSize,
// Note, this must be the number of tables not the size of all memtables
// according to https://github.com/cockroachdb/pebble/blob/master/options.go#L738-L742
// and to https://github.com/cockroachdb/pebble/blob/master/db.go#L1892-L1903.
MemTableStopWritesThreshold: memTableLimit,
// The default compaction concurrency(1 thread),
// Here use all available CPUs for faster compaction.