Skip to content

Commit 65468cf

Browse files
craig[bot]stevendanna
andcommitted
Merge #148899
148899: kvnemesis: add another buffered-writes variant r=arulajmani a=stevendanna Until we are confident in the lock durability upgrading code, let's test in its absence. This will also ensure we are losing locks at some rate and stress the new lock-loss detection. Epic: none Release note: None Co-authored-by: Steven Danna <[email protected]>
2 parents a190aab + d3f39a5 commit 65468cf

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

pkg/kv/kvnemesis/kvnemesis_test.go

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -330,9 +330,32 @@ func TestKVNemesisSingleNode_ReproposalChaos(t *testing.T) {
330330
})
331331
}
332332

333-
// TestKVNemesisMultiNode_BufferedWrites runs KVNemesis with write buffering
334-
// enabled.
335-
func TestKVNemesisMultiNode_BufferedWrites(t *testing.T) {
333+
// TestKVNemesisMultiNode_BufferedWritesNoLockDurabilityUpgrades runs KVNemesis
334+
// with write buffering enabled and no lock durability ugprades. We leave splits
335+
// to be metamorphic since those are all handled in-memory.
336+
func TestKVNemesisMultiNode_BufferedWritesNoLockDurabilityUpgrades(t *testing.T) {
337+
defer leaktest.AfterTest(t)()
338+
defer log.Scope(t).Close(t)
339+
340+
testKVNemesisImpl(t, kvnemesisTestCfg{
341+
numNodes: 3,
342+
numSteps: defaultNumSteps,
343+
concurrency: 5,
344+
seedOverride: 0,
345+
invalidLeaseAppliedIndexProb: 0.2,
346+
injectReproposalErrorProb: 0.2,
347+
assertRaftApply: true,
348+
bufferedWriteProb: 0.70,
349+
testSettings: func(ctx context.Context, st *cluster.Settings) {
350+
concurrency.UnreplicatedLockReliabilityLeaseTransfer.Override(ctx, &st.SV, false)
351+
concurrency.UnreplicatedLockReliabilityMerge.Override(ctx, &st.SV, false)
352+
kvcoord.BufferedWritesEnabled.Override(ctx, &st.SV, true)
353+
}})
354+
}
355+
356+
// TestKVNemesisMultiNode_BufferedWritesLockDurabilityUpgrades tests buffered
357+
// writes with all lock durability features enabled.
358+
func TestKVNemesisMultiNode_BufferedWritesLockDurabilityUpgrades(t *testing.T) {
336359
defer leaktest.AfterTest(t)()
337360
defer log.Scope(t).Close(t)
338361

0 commit comments

Comments
 (0)