diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-08-09 07:44:24 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-08-09 07:44:24 +0000 |
commit | cc5f2fa2d5dc3c0ccf4ab8699eca538b438ec42d (patch) | |
tree | f878bde6afe5062c3994705a18ebcdd1d07f1223 | |
parent | 9697636fb3e86c025d4e636ef5958e7585620a1a (diff) |
Use a vespalib::hash_set<uint8_t> instead of std::unordered_set
13 files changed, 20 insertions, 20 deletions
diff --git a/storage/src/tests/distributor/mock_tickable_stripe.h b/storage/src/tests/distributor/mock_tickable_stripe.h index ec2f978c029..77a6f537d28 100644 --- a/storage/src/tests/distributor/mock_tickable_stripe.h +++ b/storage/src/tests/distributor/mock_tickable_stripe.h @@ -23,7 +23,7 @@ struct MockTickableStripe : TickableStripe { const lib::Distribution&, const lib::ClusterState&, const char*, - const std::unordered_set<uint16_t>&, + const OutdatedNodes &, const std::vector<dbtransition::Entry>&) override { abort(); diff --git a/storage/src/tests/distributor/multi_thread_stripe_access_guard_test.cpp b/storage/src/tests/distributor/multi_thread_stripe_access_guard_test.cpp index 6bc98ef022e..db89b30efb2 100644 --- a/storage/src/tests/distributor/multi_thread_stripe_access_guard_test.cpp +++ b/storage/src/tests/distributor/multi_thread_stripe_access_guard_test.cpp @@ -25,7 +25,7 @@ struct AggregationTestingMockTickableStripe : MockTickableStripe { } void merge_entries_into_db(document::BucketSpace, api::Timestamp, const lib::Distribution&, - const lib::ClusterState&, const char*, const std::unordered_set<uint16_t>&, + const lib::ClusterState&, const char*, const OutdatedNodes &, const std::vector<dbtransition::Entry>& entries_in) override { entries = entries_in; } diff --git a/storage/src/vespa/storage/distributor/distributor_stripe.cpp b/storage/src/vespa/storage/distributor/distributor_stripe.cpp index 616fd77fdd7..d534feaa65a 100644 --- a/storage/src/vespa/storage/distributor/distributor_stripe.cpp +++ b/storage/src/vespa/storage/distributor/distributor_stripe.cpp @@ -881,7 +881,7 @@ DistributorStripe::merge_entries_into_db(document::BucketSpace bucket_space, const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes& outdated_nodes, const std::vector<dbtransition::Entry>& entries) { bucket_db_updater().merge_entries_into_db(bucket_space, gathered_at_timestamp, distribution, diff --git a/storage/src/vespa/storage/distributor/distributor_stripe.h b/storage/src/vespa/storage/distributor/distributor_stripe.h index 801efa0ff73..9fcd1906467 100644 --- a/storage/src/vespa/storage/distributor/distributor_stripe.h +++ b/storage/src/vespa/storage/distributor/distributor_stripe.h @@ -286,7 +286,7 @@ private: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) override; void update_read_snapshot_before_db_pruning() override; void update_read_snapshot_after_db_pruning(const lib::ClusterStateBundle& new_state) override; diff --git a/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.cpp b/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.cpp index b00e4ce3cba..01c2875671b 100644 --- a/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.cpp +++ b/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.cpp @@ -83,7 +83,7 @@ MultiThreadedStripeAccessGuard::merge_entries_into_db(document::BucketSpace buck const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) { if (entries.empty()) { diff --git a/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.h b/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.h index c52a01fdded..7a58a784eda 100644 --- a/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.h +++ b/storage/src/vespa/storage/distributor/multi_threaded_stripe_access_guard.h @@ -46,7 +46,7 @@ public: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) override; void update_read_snapshot_before_db_pruning() override; diff --git a/storage/src/vespa/storage/distributor/outdated_nodes.h b/storage/src/vespa/storage/distributor/outdated_nodes.h index cef799ee4aa..d014a3074a4 100644 --- a/storage/src/vespa/storage/distributor/outdated_nodes.h +++ b/storage/src/vespa/storage/distributor/outdated_nodes.h @@ -2,10 +2,10 @@ #pragma once -#include <unordered_set> +#include <vespa/vespalib/stllike/hash_set.h> namespace storage::distributor::dbtransition { -using OutdatedNodes = std::unordered_set<uint16_t>; +using OutdatedNodes = vespalib::hash_set<uint16_t>; } diff --git a/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.cpp b/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.cpp index 62de3b50b51..19cc7bc522f 100644 --- a/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.cpp +++ b/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.cpp @@ -113,10 +113,7 @@ PendingBucketSpaceDbTransition::DbMerger::removeCopiesFromNodesThatWereRequested && (info.getTimestamp() < _creation_timestamp) && e->removeNode(entryNode, TrustedUpdate::DEFER)) { - LOG(spam, - "Removed bucket %s from node %d", - bucketId.toString().c_str(), - entryNode); + LOG(spam, "Removed bucket %s from node %d", bucketId.toString().c_str(), entryNode); updated = true; // After removing current node, getNodeRef(i) will point to the _next_ node, so don't increment `i`. } else { @@ -391,8 +388,7 @@ PendingBucketSpaceDbTransition::markAllAvailableNodesAsRequiringRequest() } void -PendingBucketSpaceDbTransition::addAdditionalNodesToOutdatedSet( - const std::unordered_set<uint16_t>& nodes) +PendingBucketSpaceDbTransition::addAdditionalNodesToOutdatedSet(const OutdatedNodes & nodes) { const uint16_t nodeCount(newStateStorageNodeCount()); for (uint16_t node : nodes) { diff --git a/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.h b/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.h index bce0c9bdc93..9fb6e4ed315 100644 --- a/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.h +++ b/storage/src/vespa/storage/distributor/pending_bucket_space_db_transition.h @@ -76,7 +76,7 @@ public: const lib::Distribution& _distribution; const lib::ClusterState& _new_state; const char* _storage_up_states; - const std::unordered_set<uint16_t>& _outdated_nodes; // TODO hash_set + const OutdatedNodes & _outdated_nodes; // TODO hash_set const std::vector<dbtransition::Entry>& _entries; uint32_t _iter; public: @@ -84,7 +84,7 @@ public: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) : _creation_timestamp(creation_timestamp), _distribution(distribution), diff --git a/storage/src/vespa/storage/distributor/stripe_access_guard.h b/storage/src/vespa/storage/distributor/stripe_access_guard.h index 2ed40cfcf2e..d2d3615b776 100644 --- a/storage/src/vespa/storage/distributor/stripe_access_guard.h +++ b/storage/src/vespa/storage/distributor/stripe_access_guard.h @@ -4,6 +4,7 @@ #include "bucket_space_distribution_configs.h" #include "pending_bucket_space_db_transition_entry.h" #include "potential_data_loss_report.h" +#include "outdated_nodes.h" #include <vespa/document/bucket/bucketspace.h> #include <vespa/storageapi/defs.h> #include <unordered_set> // TODO use hash_set instead @@ -30,6 +31,7 @@ class NodeSupportedFeaturesRepo; */ class StripeAccessGuard { public: + using OutdatedNodes = dbtransition::OutdatedNodes; virtual ~StripeAccessGuard() = default; virtual void flush_and_close() = 0; @@ -51,7 +53,7 @@ public: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes& outdated_nodes, const std::vector<dbtransition::Entry>& entries) = 0; virtual void update_read_snapshot_before_db_pruning() = 0; diff --git a/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.cpp b/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.cpp index 8fce8c3137a..09e7d370a98 100644 --- a/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.cpp +++ b/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.cpp @@ -257,7 +257,7 @@ StripeBucketDBUpdater::merge_entries_into_db(document::BucketSpace bucket_space, const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) { auto& s = _op_ctx.bucket_space_repo().get(bucket_space); diff --git a/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.h b/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.h index 04efe91e9e7..b8b729edbeb 100644 --- a/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.h +++ b/storage/src/vespa/storage/distributor/stripe_bucket_db_updater.h @@ -33,6 +33,7 @@ class StripeBucketDBUpdater final public api::MessageHandler { public: + using OutdatedNodes = dbtransition::OutdatedNodes; StripeBucketDBUpdater(const DistributorNodeContext& node_ctx, DistributorStripeOperationContext& op_ctx, DistributorStripeInterface& owner, @@ -178,7 +179,7 @@ private: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries); void enqueueRecheckUntilPendingStateEnabled(uint16_t node, const document::Bucket&); diff --git a/storage/src/vespa/storage/distributor/tickable_stripe.h b/storage/src/vespa/storage/distributor/tickable_stripe.h index e458043ac64..499cb41ee34 100644 --- a/storage/src/vespa/storage/distributor/tickable_stripe.h +++ b/storage/src/vespa/storage/distributor/tickable_stripe.h @@ -24,6 +24,7 @@ class NodeSupportedFeaturesRepo; */ class TickableStripe { public: + using OutdatedNodes = dbtransition::OutdatedNodes; virtual ~TickableStripe() = default; // Perform a single operation tick of the stripe logic. @@ -53,7 +54,7 @@ public: const lib::Distribution& distribution, const lib::ClusterState& new_state, const char* storage_up_states, - const std::unordered_set<uint16_t>& outdated_nodes, + const OutdatedNodes & outdated_nodes, const std::vector<dbtransition::Entry>& entries) = 0; virtual void update_read_snapshot_before_db_pruning() = 0; |