From 6ae85be688bb137b56e58ced8b00fb6009d9d1c1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 31 Jan 2025 10:19:26 +0800 Subject: [PATCH] branch-3.0: [test](move-memtable) mitigate flaky injection test `skip_two_backends` #47082 (#47110) Cherry-picked from #47082 Co-authored-by: Kaijie Chen --- .../test_multi_replica_fault_injection.groovy | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/regression-test/suites/fault_injection_p0/test_multi_replica_fault_injection.groovy b/regression-test/suites/fault_injection_p0/test_multi_replica_fault_injection.groovy index bc840a32de4b49..4c01513c612d45 100644 --- a/regression-test/suites/fault_injection_p0/test_multi_replica_fault_injection.groovy +++ b/regression-test/suites/fault_injection_p0/test_multi_replica_fault_injection.groovy @@ -75,7 +75,7 @@ suite("test_multi_replica_fault_injection", "nonConcurrent") { file "baseall.txt" } - def load_with_injection = { injection, error_msg, success=false-> + def load_with_injection = { injection, error_msg, success=false, alt_error_msg=null-> try { sql "truncate table test" GetDebugPoint().enableDebugPointForAllBEs(injection) @@ -83,7 +83,8 @@ suite("test_multi_replica_fault_injection", "nonConcurrent") { assertTrue(success, String.format("Expected Exception '%s', actual success", error_msg)) } catch(Exception e) { logger.info(e.getMessage()) - assertTrue(e.getMessage().contains(error_msg), e.toString()) + boolean e_contains_alt_error_msg = (alt_error_msg != null && e.getMessage().contains(alt_error_msg)) + assertTrue(e.getMessage().contains(error_msg) || e_contains_alt_error_msg, e.toString()) } finally { GetDebugPoint().disableDebugPointForAllBEs(injection) } @@ -101,7 +102,7 @@ suite("test_multi_replica_fault_injection", "nonConcurrent") { // test one backend open failure load_with_injection("VTabletWriterV2._open_streams.skip_one_backend", "success", true) // test two backend open failure - load_with_injection("VTabletWriterV2._open_streams.skip_two_backends", "not enough streams 1/3") + load_with_injection("VTabletWriterV2._open_streams.skip_two_backends", "not enough streams 1/3", false, "succ replica num 1 < load required replica num 2") sql """ set enable_memtable_on_sink_node=false """ } }