diff options
author | Tor Brede Vekterli <vekterli@oath.com> | 2018-03-06 13:08:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-06 13:08:55 +0100 |
commit | d51ddcbcebc9eb31e91e569fad8ae4907d63a939 (patch) | |
tree | 85756ca4a18e8dd137f75cf35cb214462c456e64 /vdslib | |
parent | c226dccd4f2ddf4ce8c2add4a113a177188d2fee (diff) |
Revert "Add cluster state RPC v3 support on content nodes"
Diffstat (limited to 'vdslib')
-rw-r--r-- | vdslib/src/vespa/vdslib/state/cluster_state_bundle.cpp | 41 | ||||
-rw-r--r-- | vdslib/src/vespa/vdslib/state/cluster_state_bundle.h | 16 | ||||
-rw-r--r-- | vdslib/src/vespa/vdslib/state/clusterstate.cpp | 2 | ||||
-rw-r--r-- | vdslib/src/vespa/vdslib/state/clusterstate.h | 4 |
4 files changed, 3 insertions, 60 deletions
diff --git a/vdslib/src/vespa/vdslib/state/cluster_state_bundle.cpp b/vdslib/src/vespa/vdslib/state/cluster_state_bundle.cpp index cf9c0ba6dff..a2bbba5e52c 100644 --- a/vdslib/src/vespa/vdslib/state/cluster_state_bundle.cpp +++ b/vdslib/src/vespa/vdslib/state/cluster_state_bundle.cpp @@ -1,9 +1,7 @@ // Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include <vespa/document/bucket/fixed_bucket_spaces.h> #include "cluster_state_bundle.h" #include "clusterstate.h" -#include <iostream> namespace storage::lib { @@ -12,13 +10,6 @@ ClusterStateBundle::ClusterStateBundle(const ClusterState &baselineClusterState) { } -ClusterStateBundle::ClusterStateBundle(const ClusterState& baselineClusterState, - BucketSpaceStateMapping derivedBucketSpaceStates) - : _baselineClusterState(std::make_shared<const ClusterState>(baselineClusterState)), - _derivedBucketSpaceStates(std::move(derivedBucketSpaceStates)) -{ -} - ClusterStateBundle::~ClusterStateBundle() = default; const std::shared_ptr<const lib::ClusterState> & @@ -31,7 +22,6 @@ const std::shared_ptr<const lib::ClusterState> & ClusterStateBundle::getDerivedClusterState(document::BucketSpace) const { // For now, just return the baseline cluster state. - // TODO use _derivedBucketSpaceStates return _baselineClusterState; } @@ -44,36 +34,7 @@ ClusterStateBundle::getVersion() const bool ClusterStateBundle::operator==(const ClusterStateBundle &rhs) const { - if (!(*_baselineClusterState == *rhs._baselineClusterState)) { - return false; - } - if (_derivedBucketSpaceStates.size() != rhs._derivedBucketSpaceStates.size()) { - return false; - } - // Can't do a regular operator== comparison since we must check equality - // of cluster state _values_, not their _pointers_. - for (auto& lhs_ds : _derivedBucketSpaceStates) { - auto rhs_iter = rhs._derivedBucketSpaceStates.find(lhs_ds.first); - if ((rhs_iter == rhs._derivedBucketSpaceStates.end()) - || !(*lhs_ds.second == *rhs_iter->second)) { - return false; - } - } - return true; -} - -std::ostream& operator<<(std::ostream& os, const ClusterStateBundle& bundle) { - os << "ClusterStateBundle('" << *bundle.getBaselineClusterState(); - if (!bundle.getDerivedClusterStates().empty()) { - // Output ordering is undefined for of per-space states. - for (auto& ds : bundle.getDerivedClusterStates()) { - os << "', "; - os << document::FixedBucketSpaces::to_string(ds.first); - os << " '" << *ds.second; - } - } - os << "')"; - return os; + return *_baselineClusterState == *rhs._baselineClusterState; } } diff --git a/vdslib/src/vespa/vdslib/state/cluster_state_bundle.h b/vdslib/src/vespa/vdslib/state/cluster_state_bundle.h index a8ee0b54713..77d26092f4e 100644 --- a/vdslib/src/vespa/vdslib/state/cluster_state_bundle.h +++ b/vdslib/src/vespa/vdslib/state/cluster_state_bundle.h @@ -3,8 +3,6 @@ #pragma once #include <vespa/document/bucket/bucketspace.h> -#include <unordered_map> -#include <iosfwd> namespace storage::lib { @@ -16,28 +14,14 @@ class ClusterState; */ class ClusterStateBundle { -public: - using BucketSpaceStateMapping = std::unordered_map< - document::BucketSpace, - std::shared_ptr<const ClusterState>, - document::BucketSpace::hash - >; std::shared_ptr<const ClusterState> _baselineClusterState; - BucketSpaceStateMapping _derivedBucketSpaceStates; public: explicit ClusterStateBundle(const ClusterState &baselineClusterState); - ClusterStateBundle(const ClusterState& baselineClusterState, - BucketSpaceStateMapping derivedBucketSpaceStates); ~ClusterStateBundle(); const std::shared_ptr<const ClusterState> &getBaselineClusterState() const; const std::shared_ptr<const ClusterState> &getDerivedClusterState(document::BucketSpace bucketSpace) const; - const BucketSpaceStateMapping& getDerivedClusterStates() const noexcept { - return _derivedBucketSpaceStates; - } uint32_t getVersion() const; bool operator==(const ClusterStateBundle &rhs) const; }; -std::ostream& operator<<(std::ostream&, const ClusterStateBundle&); - } diff --git a/vdslib/src/vespa/vdslib/state/clusterstate.cpp b/vdslib/src/vespa/vdslib/state/clusterstate.cpp index fbc9943e22d..9a69ed98c79 100644 --- a/vdslib/src/vespa/vdslib/state/clusterstate.cpp +++ b/vdslib/src/vespa/vdslib/state/clusterstate.cpp @@ -55,7 +55,7 @@ struct NodeData { } }; -ClusterState::ClusterState(const vespalib::string& serialized) +ClusterState::ClusterState(const vespalib::stringref & serialized) : Printable(), _version(0), _clusterState(&State::UP), diff --git a/vdslib/src/vespa/vdslib/state/clusterstate.h b/vdslib/src/vespa/vdslib/state/clusterstate.h index 9e8dd0f292a..b60f2f6f1cc 100644 --- a/vdslib/src/vespa/vdslib/state/clusterstate.h +++ b/vdslib/src/vespa/vdslib/state/clusterstate.h @@ -36,9 +36,7 @@ public: ClusterState(); ClusterState(const ClusterState&); - // FIXME make ClusterState parsing not require null termination of string, - // then move to vespalib::stringref - explicit ClusterState(const vespalib::string& serialized); + explicit ClusterState(const vespalib::stringref & serialized); ~ClusterState(); std::string getTextualDifference(const ClusterState& other) const; |