diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2020-11-05 23:00:57 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@broadpark.no> | 2020-11-05 23:18:39 +0100 |
commit | f94bc792c40a854f3be3a0f5acf6748960eb268a (patch) | |
tree | ba1ac34e51e539aacfb2f5a0dea71f1eda0f1c50 | |
parent | 40cd2c7b371fd8c0b300dd251408eca5fb28bd40 (diff) |
Remove disk distribution from C++ part of vdslib.
5 files changed, 6 insertions, 63 deletions
diff --git a/documentapi/src/tests/policies/policies_test.cpp b/documentapi/src/tests/policies/policies_test.cpp index 61a8618556b..a4eaf54c1dc 100644 --- a/documentapi/src/tests/policies/policies_test.cpp +++ b/documentapi/src/tests/policies/policies_test.cpp @@ -723,9 +723,7 @@ Test::get_document_messages_are_sent_to_the_route_handling_the_given_document_ty namespace { string getDefaultDistributionConfig( - uint16_t redundancy = 2, uint16_t nodeCount = 10, - storage::lib::Distribution::DiskDistribution distr - = storage::lib::Distribution::MODULO_BID) + uint16_t redundancy = 2, uint16_t nodeCount = 10) { std::ostringstream ost; ost << "raw:redundancy " << redundancy << "\n" @@ -737,9 +735,6 @@ namespace { for (uint16_t i=0; i<nodeCount; ++i) { ost << "group[0].nodes[" << i << "].index " << i << "\n"; } - ost << "disk_distribution " - << storage::lib::Distribution::getDiskDistributionName(distr) - << "\n"; return ost.str(); } } diff --git a/storage/src/vespa/storage/tools/getidealstate.cpp b/storage/src/vespa/storage/tools/getidealstate.cpp index e17212005a1..02f0d658df9 100644 --- a/storage/src/vespa/storage/tools/getidealstate.cpp +++ b/storage/src/vespa/storage/tools/getidealstate.cpp @@ -17,8 +17,6 @@ struct Options : public vespalib::ProgramOptions { bool showSyntaxPage; std::string clusterName; std::string clusterState; - uint32_t diskCount; - std::string diskDistribution; uint32_t redundancy; std::string bucket; std::string upStates; @@ -46,12 +44,8 @@ Options::Options(int argc, const char* const* argv) "Shows this help page"); addOption("s clusterstate", clusterState, std::string(""), "The state of the cluster to calculate position in"); - addOption("n diskcount", diskCount, uint32_t(0), - "The number of disks on each node"); addOption("r redundancy", redundancy, uint32_t(2), "The redundancy to keep for each bucket"); - addOption("diskdistribution", diskDistribution, std::string("MODULO_BID"), - "Disk distribution algorithm used"); addOption("u upstates", upStates, std::string("uims"), "States to consider as up in ideal state calculations"); addOption("i stdin", bucketsOnStdIn, false, @@ -108,7 +102,6 @@ int run(int argc, char** argv) { } uint16_t redundancy(o.redundancy); - lib::Distribution::DiskDistribution diskDistribution(lib::Distribution::getDiskDistribution(o.diskDistribution)); std::unique_ptr<lib::Distribution> distribution; lib::ClusterState clusterState(o.clusterState); @@ -122,7 +115,6 @@ int run(int argc, char** argv) { std::unique_ptr<vespa::config::content::StorDistributionConfig> config = config::ConfigGetter<vespa::config::content::StorDistributionConfig>::getConfig(uri.getConfigId(), uri.getContext()); redundancy = config->redundancy; distribution.reset(new lib::Distribution(*config)); - diskDistribution = distribution->getDiskDistribution(); if (o.verbose) { std::cerr << "Using distribution config: '"; config::OstreamConfigWriter ocw(std::cerr); @@ -144,7 +136,7 @@ int run(int argc, char** argv) { << "\n"; } lib::Distribution::ConfigWrapper config(lib::Distribution::getDefaultDistributionConfig( - redundancy, clusterState.getNodeCount(lib::NodeType::DISTRIBUTOR), diskDistribution)); + redundancy, clusterState.getNodeCount(lib::NodeType::DISTRIBUTOR))); distribution.reset(new lib::Distribution(config)); if (o.verbose) { std::cerr << "Using distribution config: '"; diff --git a/vdslib/src/tests/distribution/distributiontest.cpp b/vdslib/src/tests/distribution/distributiontest.cpp index d9ebba39916..5e77181ee6b 100644 --- a/vdslib/src/tests/distribution/distributiontest.cpp +++ b/vdslib/src/tests/distribution/distributiontest.cpp @@ -1003,7 +1003,6 @@ group[2].nodes[0].index 3 group[2].nodes[0].retired false group[2].nodes[1].index 4 group[2].nodes[1].retired false -disk_distribution "MODULO_BID" )"; Distribution distr(raw_config); ClusterState state("version:1 distributor:5 storage:5"); diff --git a/vdslib/src/vespa/vdslib/distribution/distribution.cpp b/vdslib/src/vespa/vdslib/distribution/distribution.cpp index c9e1fd1bef6..ac085ea5cbe 100644 --- a/vdslib/src/vespa/vdslib/distribution/distribution.cpp +++ b/vdslib/src/vespa/vdslib/distribution/distribution.cpp @@ -43,8 +43,7 @@ Distribution::Distribution() _node2Group(), _redundancy(), _initialRedundancy(0), - _ensurePrimaryPersisted(true), - _diskDistribution() + _ensurePrimaryPersisted(true) { auto config(getDefaultDistributionConfig(0, 0)); vespalib::asciistream ost; @@ -61,7 +60,6 @@ Distribution::Distribution(const Distribution& d) _redundancy(), _initialRedundancy(0), _ensurePrimaryPersisted(true), - _diskDistribution(), _serialized(d._serialized) { vespalib::asciistream ist(_serialized); @@ -84,8 +82,7 @@ Distribution::Distribution(const vespa::config::content::StorDistributionConfig _node2Group(), _redundancy(), _initialRedundancy(0), - _ensurePrimaryPersisted(true), - _diskDistribution() + _ensurePrimaryPersisted(true) { vespalib::asciistream ost; config::AsciiConfigWriter writer(ost); @@ -101,7 +98,6 @@ Distribution::Distribution(const vespalib::string& serialized) _redundancy(), _initialRedundancy(0), _ensurePrimaryPersisted(true), - _diskDistribution(), _serialized(serialized) { vespalib::asciistream ist(_serialized); @@ -120,27 +116,6 @@ Distribution::operator=(const Distribution& d) Distribution::~Distribution() = default; -namespace { - using ConfigDiskDistribution = vespa::config::content::StorDistributionConfig::DiskDistribution; - Distribution::DiskDistribution fromConfig(ConfigDiskDistribution cfg) { - switch (cfg) { - case ConfigDiskDistribution::MODULO : return Distribution::MODULO; - case ConfigDiskDistribution::MODULO_BID : return Distribution::MODULO_BID; - case ConfigDiskDistribution::MODULO_INDEX : return Distribution::MODULO_INDEX; - case ConfigDiskDistribution::MODULO_KNUTH : return Distribution::MODULO_KNUTH; - } - LOG_ABORT("should not be reached"); - } - ConfigDiskDistribution toConfig(Distribution::DiskDistribution cfg) { - switch (cfg) { - case Distribution::MODULO : return ConfigDiskDistribution::MODULO; - case Distribution::MODULO_BID : return ConfigDiskDistribution::MODULO_BID; - case Distribution::MODULO_INDEX : return ConfigDiskDistribution::MODULO_INDEX; - case Distribution::MODULO_KNUTH : return ConfigDiskDistribution::MODULO_KNUTH; - } - LOG_ABORT("should not be reached"); - } -} void Distribution::configure(const vespa::config::content::StorDistributionConfig& config) @@ -195,7 +170,6 @@ Distribution::configure(const vespa::config::content::StorDistributionConfig& co _redundancy = config.redundancy; _initialRedundancy = config.initialRedundancy; _ensurePrimaryPersisted = config.ensurePrimaryPersisted; - _diskDistribution = fromConfig(config.diskDistribution); _readyCopies = config.readyCopies; _activePerGroup = config.activePerLeafGroup; _distributorAutoOwnershipTransferOnWholeGroupDown @@ -237,16 +211,6 @@ Distribution::getStorageSeed( return seed; } -vespalib::string Distribution::getDiskDistributionName(DiskDistribution dist) { - - return DistributionConfig::getDiskDistributionName(toConfig(dist)); -} - -Distribution::DiskDistribution -Distribution::getDiskDistribution(vespalib::stringref name) { - return fromConfig(DistributionConfig::getDiskDistribution(name)); -} - void Distribution::print(std::ostream& out, bool, const std::string&) const { out << serialize(); @@ -525,7 +489,7 @@ Distribution::getIdealNodes(const NodeType& nodeType, } Distribution::ConfigWrapper -Distribution::getDefaultDistributionConfig(uint16_t redundancy, uint16_t nodeCount, DiskDistribution distr) +Distribution::getDefaultDistributionConfig(uint16_t redundancy, uint16_t nodeCount) { std::unique_ptr<vespa::config::content::StorDistributionConfigBuilder> config(new vespa::config::content::StorDistributionConfigBuilder()); config->redundancy = redundancy; @@ -537,7 +501,6 @@ Distribution::getDefaultDistributionConfig(uint16_t redundancy, uint16_t nodeCou for (uint16_t i=0; i<nodeCount; ++i) { config->group[0].nodes[i].index = i; } - config->diskDistribution = toConfig(distr); return ConfigWrapper(std::move(config)); } diff --git a/vdslib/src/vespa/vdslib/distribution/distribution.h b/vdslib/src/vespa/vdslib/distribution/distribution.h index db68f123cbf..407740e2bc7 100644 --- a/vdslib/src/vespa/vdslib/distribution/distribution.h +++ b/vdslib/src/vespa/vdslib/distribution/distribution.h @@ -30,7 +30,6 @@ public: typedef std::unique_ptr<Distribution> UP; using DistributionConfig = const vespa::config::content::internal::InternalStorDistributionType; using DistributionConfigBuilder = vespa::config::content::internal::InternalStorDistributionType; - enum DiskDistribution { MODULO, MODULO_INDEX, MODULO_KNUTH, MODULO_BID }; private: std::vector<uint32_t> _distributionBitMasks; @@ -42,7 +41,6 @@ private: bool _activePerGroup; bool _ensurePrimaryPersisted; bool _distributorAutoOwnershipTransferOnWholeGroupDown; - DiskDistribution _diskDistribution; vespalib::string _serialized; struct ResultGroup { @@ -125,7 +123,6 @@ public: bool ensurePrimaryPersisted() const { return _ensurePrimaryPersisted; } bool distributorAutoOwnershipTransferOnWholeGroupDown() const { return _distributorAutoOwnershipTransferOnWholeGroupDown; } - DiskDistribution getDiskDistribution() const { return _diskDistribution; } bool activePerGroup() const { return _activePerGroup; } bool operator==(const Distribution& o) const @@ -163,10 +160,7 @@ public: * should not be used by any production code. */ static ConfigWrapper getDefaultDistributionConfig( - uint16_t redundancy = 2, uint16_t nodeCount = 10, - DiskDistribution distr = MODULO_BID); - static vespalib::string getDiskDistributionName(DiskDistribution dist); - static DiskDistribution getDiskDistribution(vespalib::stringref name); + uint16_t redundancy = 2, uint16_t nodeCount = 10); /** * Utility function used by distributor to split copies into groups to |