diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2021-01-22 13:16:45 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2021-01-22 13:16:45 +0000 |
commit | 540d4f5a3245d89dd2e3386df7ad0b2fb6489c18 (patch) | |
tree | 86fa61667c98cd0f086f004c92ba74a3fe961373 /searchcore | |
parent | 9c70574815a819ba3838d6ac86abd548077002e6 (diff) |
Wire in proper BucketSpace.
Diffstat (limited to 'searchcore')
3 files changed, 15 insertions, 8 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.cpp b/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.cpp index 49a782df7a3..51b84d5ec6e 100644 --- a/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.cpp @@ -22,7 +22,7 @@ CompactionJob::scanDocuments(const LidUsageStats &stats) if (_scanItr->valid()) { DocumentMetaData document = getNextDocument(stats, false); if (document.valid()) { - Bucket metaBucket(document::Bucket(document::BucketSpace::placeHolder(), document.bucketId)); + Bucket metaBucket(document::Bucket(_bucketSpace, document.bucketId)); IDestructorCallback::SP context = _moveOpsLimiter->beginOperation(); auto failed = _bucketExecutor.execute(metaBucket, makeBucketTask([this, meta=document, opsTracker=std::move(context)] (const Bucket & bucket, std::shared_ptr<IDestructorCallback> onDone) { assert(bucket.getBucketId() == meta.bucketId); @@ -58,10 +58,12 @@ CompactionJob::CompactionJob(const DocumentDBLidSpaceCompactionConfig &config, IDiskMemUsageNotifier &diskMemUsageNotifier, const BlockableMaintenanceJobConfig &blockableConfig, IClusterStateChangedNotifier &clusterStateChangedNotifier, - bool nodeRetired) + bool nodeRetired, + document::BucketSpace bucketSpace) : LidSpaceCompactionJobBase(config, handler, opStorer, diskMemUsageNotifier, blockableConfig, clusterStateChangedNotifier, nodeRetired), - _bucketExecutor(bucketExecutor) + _bucketExecutor(bucketExecutor), + _bucketSpace(bucketSpace) { } diff --git a/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.h b/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.h index f79a3adc7d0..0d962d5f7a9 100644 --- a/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.h +++ b/searchcore/src/vespa/searchcore/proton/server/lid_space_compaction_job_take2.h @@ -3,6 +3,7 @@ #pragma once #include "lid_space_compaction_job_base.h" +#include <vespa/document/bucket/bucketspace.h> namespace storage::spi { class BucketExecutor;} namespace proton { @@ -25,6 +26,7 @@ private: using BucketExecutor = storage::spi::BucketExecutor; using IDestructorCallback = vespalib::IDestructorCallback; BucketExecutor &_bucketExecutor; + document::BucketSpace _bucketSpace; bool scanDocuments(const search::LidUsageStats &stats) override; void moveDocument(const search::DocumentMetaData & meta, std::shared_ptr<IDestructorCallback> onDone); @@ -37,7 +39,8 @@ public: IDiskMemUsageNotifier &diskMemUsageNotifier, const BlockableMaintenanceJobConfig &blockableConfig, IClusterStateChangedNotifier &clusterStateChangedNotifier, - bool nodeRetired); + bool nodeRetired, + document::BucketSpace bucketSpace); ~CompactionJob() override; }; diff --git a/searchcore/src/vespa/searchcore/proton/server/maintenance_jobs_injector.cpp b/searchcore/src/vespa/searchcore/proton/server/maintenance_jobs_injector.cpp index d7505f89bde..c9ac5dd3c49 100644 --- a/searchcore/src/vespa/searchcore/proton/server/maintenance_jobs_injector.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/maintenance_jobs_injector.cpp @@ -31,8 +31,10 @@ injectLidSpaceCompactionJobs(MaintenanceController &controller, const IJobTracker::SP &tracker, IDiskMemUsageNotifier &diskMemUsageNotifier, IClusterStateChangedNotifier &clusterStateChangedNotifier, - const std::shared_ptr<IBucketStateCalculator> &calc) + const std::shared_ptr<IBucketStateCalculator> &calc, + document::BucketSpace bucketSpace) { + (void) bucketSpace; for (auto &lidHandler : lscHandlers) { IMaintenanceJob::UP job = std::make_unique<LidSpaceCompactionJob>( config.getLidSpaceCompactionConfig(), @@ -109,9 +111,9 @@ MaintenanceJobsInjector::injectJobs(MaintenanceController &controller, controller.registerJobInMasterThread( trackJob(jobTrackers.getRemovedDocumentsPrune(), std::move(pruneRDjob))); if (!config.getLidSpaceCompactionConfig().isDisabled()) { - injectLidSpaceCompactionJobs(controller, config, lscHandlers, opStorer, - fbHandler, jobTrackers.getLidSpaceCompact(), - diskMemUsageNotifier, clusterStateChangedNotifier, calc); + injectLidSpaceCompactionJobs(controller, config, lscHandlers, opStorer, fbHandler, + jobTrackers.getLidSpaceCompact(), diskMemUsageNotifier, + clusterStateChangedNotifier, calc, bucketSpace); } injectBucketMoveJob(controller, fbHandler, bucketCreateNotifier, docTypeName, bucketSpace, moveHandler, bucketModifiedHandler, clusterStateChangedNotifier, bucketStateChangedNotifier, calc, jobTrackers, |