diff options
author | Tor Brede Vekterli <vekterli@yahooinc.com> | 2023-06-07 17:26:18 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-07 17:26:18 +0200 |
commit | 59c924d6ad51d19667c86afc072fa67e32066e6a (patch) | |
tree | 59f007fc1dbe4db83a562efabc7da3af0a07301b /storage/src/tests | |
parent | 7dd44d8bd4d0d6620151e4a4b80f96107f803c04 (diff) | |
parent | 86675148f8d1f915558e1958eb1e125eddfbd11d (diff) |
Merge pull request #27335 from vespa-engine/vekterli/must-get-state-version-from-pending-state-if-presentv8.174.17
Check cluster state version in pending state, if present
Diffstat (limited to 'storage/src/tests')
-rw-r--r-- | storage/src/tests/distributor/check_condition_test.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/storage/src/tests/distributor/check_condition_test.cpp b/storage/src/tests/distributor/check_condition_test.cpp index d355194ec0d..757a9329ea6 100644 --- a/storage/src/tests/distributor/check_condition_test.cpp +++ b/storage/src/tests/distributor/check_condition_test.cpp @@ -242,7 +242,20 @@ TEST_F(CheckConditionTest, check_fails_if_replica_set_changed_between_start_and_ }); } -TEST_F(CheckConditionTest, check_fails_if_bucket_ownership_changed_between_start_and_completion) { +TEST_F(CheckConditionTest, check_fails_if_bucket_ownership_changed_between_start_and_completion_pending_transition_case) { + test_cond_with_2_gets_sent([&](auto& cond) { + cond.handle_reply(_sender, make_matched_reply(0)); + simulate_set_pending_cluster_state("version:2 storage:1 distributor:1 .0.s:d"); // technically, no distributors own anything + cond.handle_reply(_sender, make_matched_reply(1)); + }, [&](auto& outcome) { + EXPECT_FALSE(outcome.matched_condition()); + EXPECT_FALSE(outcome.not_found()); + EXPECT_TRUE(outcome.failed()); + EXPECT_EQ(outcome.error_code().getResult(), api::ReturnCode::BUCKET_NOT_FOUND); + }); +} + +TEST_F(CheckConditionTest, check_fails_if_bucket_ownership_changed_between_start_and_completion_completed_transition_case) { test_cond_with_2_gets_sent([&](auto& cond) { cond.handle_reply(_sender, make_matched_reply(0)); enable_cluster_state("version:2 storage:1 distributor:1 .0.s:d"); // technically, no distributors own anything |