From 11711fc00732a1b29c65b232f3836c2dd2abc0c3 Mon Sep 17 00:00:00 2001 From: Marek Siarkowicz Date: Fri, 2 Dec 2022 15:37:25 +0100 Subject: [PATCH] tests: Recreate cluster for every failpoint trigger This shortens operation history and avoids having to many failed requests. Failed requests are problematic as too many of them can cause linearizability verification complexity to become exponential. Signed-off-by: Marek Siarkowicz --- tests/linearizability/linearizability_test.go | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/tests/linearizability/linearizability_test.go b/tests/linearizability/linearizability_test.go index 9749c5b8a..51ebfb261 100644 --- a/tests/linearizability/linearizability_test.go +++ b/tests/linearizability/linearizability_test.go @@ -74,20 +74,22 @@ func TestLinearizability(t *testing.T) { }, } for _, tc := range tcs { - t.Run(tc.name, func(t *testing.T) { - failpoint := FailpointConfig{ - failpoint: tc.failpoint, - count: failpointTriggersCount, - waitBetweenTriggers: waitBetweenFailpointTriggers, - } - traffic := trafficConfig{ - minimalQPS: minimalQPS, - maximalQPS: maximalQPS, - clientCount: 8, - traffic: DefaultTraffic, - } - testLinearizability(context.Background(), t, tc.config, failpoint, traffic) - }) + for i := 0; i < failpointTriggersCount; i++ { + t.Run(tc.name, func(t *testing.T) { + failpoint := FailpointConfig{ + failpoint: tc.failpoint, + count: 1, + waitBetweenTriggers: waitBetweenFailpointTriggers, + } + traffic := trafficConfig{ + minimalQPS: minimalQPS, + maximalQPS: maximalQPS, + clientCount: 8, + traffic: DefaultTraffic, + } + testLinearizability(context.Background(), t, tc.config, failpoint, traffic) + }) + } } }