summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@oath.com>2017-11-13 14:08:31 +0000
committerTor Egge <Tor.Egge@oath.com>2017-11-13 14:08:31 +0000
commit0e92278e72fe8264e1a4a506f30ace3411cdc405 (patch)
treea2d952c5bc637d70228ee5d6c09bb06e9024f0d6 /storage
parentfcfabf9a202c2ee80048d2caa3f2c5376583d13b (diff)
Use tracking of sent api::RequestBucketInfoCommand to supply correct
bucket space when receiving reply. This is needed to select distributor bucket database to update.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/vespa/storage/distributor/bucketdbupdater.cpp8
-rw-r--r--storage/src/vespa/storage/distributor/bucketdbupdater.h2
2 files changed, 5 insertions, 5 deletions
diff --git a/storage/src/vespa/storage/distributor/bucketdbupdater.cpp b/storage/src/vespa/storage/distributor/bucketdbupdater.cpp
index edd52a997dc..72f51806f11 100644
--- a/storage/src/vespa/storage/distributor/bucketdbupdater.cpp
+++ b/storage/src/vespa/storage/distributor/bucketdbupdater.cpp
@@ -405,7 +405,7 @@ BucketDBUpdater::mergeBucketInfoWithDatabase(
std::sort(newList.begin(), newList.end(), sort_pred);
BucketListMerger merger(newList, existing, req.timestamp);
- updateDatabase(req.targetNode, merger);
+ updateDatabase(req.bucket.getBucketSpace(), req.targetNode, merger);
}
bool
@@ -460,15 +460,15 @@ BucketDBUpdater::findRelatedBucketsInDatabase(uint16_t node, const document::Buc
}
void
-BucketDBUpdater::updateDatabase(uint16_t node, BucketListMerger& merger)
+BucketDBUpdater::updateDatabase(document::BucketSpace bucketSpace, uint16_t node, BucketListMerger& merger)
{
for (const document::BucketId & bucketId : merger.getRemovedEntries()) {
- document::Bucket bucket(BucketSpace::placeHolder(), bucketId);
+ document::Bucket bucket(bucketSpace, bucketId);
_bucketSpaceComponent.removeNodeFromDB(bucket, node);
}
for (const BucketListMerger::BucketEntry& entry : merger.getAddedEntries()) {
- document::Bucket bucket(BucketSpace::placeHolder(), entry.first);
+ document::Bucket bucket(bucketSpace, entry.first);
_bucketSpaceComponent.updateBucketDatabase(
bucket,
BucketCopy(merger.getTimestamp(), node, entry.second),
diff --git a/storage/src/vespa/storage/distributor/bucketdbupdater.h b/storage/src/vespa/storage/distributor/bucketdbupdater.h
index c11510ffd1b..c4b387c9a2f 100644
--- a/storage/src/vespa/storage/distributor/bucketdbupdater.h
+++ b/storage/src/vespa/storage/distributor/bucketdbupdater.h
@@ -152,7 +152,7 @@ private:
Updates the bucket database from the information generated by the given
bucket list merger.
*/
- void updateDatabase(uint16_t node, BucketListMerger& merger);
+ void updateDatabase(document::BucketSpace bucketSpace, uint16_t node, BucketListMerger& merger);
void updateState(const lib::ClusterState& oldState, const lib::ClusterState& newState);