diff options
author | Geir Storli <geirstorli@yahoo.no> | 2017-11-20 13:47:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-20 13:47:52 +0100 |
commit | 384d438792630d4ae1c7149b7efcc2c4a7a7ec62 (patch) | |
tree | e7e722a0878931c3ac4e36ca12a6748371825933 /storage | |
parent | 2dd374a7899775ba613384580ea32c076578e873 (diff) | |
parent | 9418fd588c9ab7a251963da258067f0a308b22c0 (diff) |
Merge pull request #4200 from vespa-engine/toregge/set-spi-cluster-state-for-each-bucket-space
Add bucketSpace argument to storage::spi::PersistenceProvider::setClusterState() method.
Diffstat (limited to 'storage')
3 files changed, 8 insertions, 5 deletions
diff --git a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp index 88a7343f8c8..dfd04b271b2 100644 --- a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp +++ b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp @@ -966,7 +966,6 @@ void FileStorManager::updateState() { lib::ClusterState::CSP state(_component.getStateUpdater().getSystemState()); - spi::ClusterState spiState(*state, _component.getIndex(), *_component.getDistribution()); lib::Node node(_component.getNodeType(), _component.getIndex()); bool nodeUp = state->getNodeState(node).getState().oneOf("uir"); @@ -977,7 +976,11 @@ FileStorManager::updateState() Deactivator deactivator; _component.getBucketSpaceRepo().forEachBucket(deactivator, "FileStorManager::updateState"); } - _provider->setClusterState(spiState); + for (const auto &elem : _component.getBucketSpaceRepo()) { + BucketSpace bucketSpace(elem.first); + spi::ClusterState spiState(*state, _component.getIndex(), *_component.getDistribution()); + _provider->setClusterState(bucketSpace, spiState); + } _nodeUpInLastNodeStateSeenByProvider = nodeUp; } diff --git a/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp b/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp index 15b0a469b35..056561e8e21 100644 --- a/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp +++ b/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp @@ -55,9 +55,9 @@ ProviderErrorWrapper::listBuckets(BucketSpace bucketSpace, spi::PartitionId part } spi::Result -ProviderErrorWrapper::setClusterState(const spi::ClusterState& state) +ProviderErrorWrapper::setClusterState(BucketSpace bucketSpace, const spi::ClusterState& state) { - return checkResult(_impl.setClusterState(state)); + return checkResult(_impl.setClusterState(bucketSpace, state)); } spi::Result diff --git a/storage/src/vespa/storage/persistence/provider_error_wrapper.h b/storage/src/vespa/storage/persistence/provider_error_wrapper.h index 122837e75ed..3b5ace90d13 100644 --- a/storage/src/vespa/storage/persistence/provider_error_wrapper.h +++ b/storage/src/vespa/storage/persistence/provider_error_wrapper.h @@ -44,7 +44,7 @@ public: spi::Result initialize() override; spi::PartitionStateListResult getPartitionStates() const override; spi::BucketIdListResult listBuckets(BucketSpace bucketSpace, spi::PartitionId) const override; - spi::Result setClusterState(const spi::ClusterState&) override; + spi::Result setClusterState(BucketSpace bucketSpace, const spi::ClusterState&) override; spi::Result setActiveState(const spi::Bucket& bucket, spi::BucketInfo::ActiveState newState) override; spi::BucketInfoResult getBucketInfo(const spi::Bucket&) const override; spi::Result put(const spi::Bucket&, spi::Timestamp, const spi::DocumentSP&, spi::Context&) override; |