diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-10-18 11:50:06 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2020-10-18 11:50:06 +0000 |
commit | a7f45c9843e197c5881ef67fa83e1d23c78daa17 (patch) | |
tree | 96618789bbc4b9303256c67c40f7989bd5c6ee99 /storage | |
parent | 554e8e480b6a614c7b730390472b83daf11911b9 (diff) |
We must detect changes in document config.
Diffstat (limited to 'storage')
5 files changed, 6 insertions, 5 deletions
diff --git a/storage/src/tests/persistence/filestorage/filestormanagertest.cpp b/storage/src/tests/persistence/filestorage/filestormanagertest.cpp index 4d9b23620f6..ec86c8db679 100644 --- a/storage/src/tests/persistence/filestorage/filestormanagertest.cpp +++ b/storage/src/tests/persistence/filestorage/filestormanagertest.cpp @@ -15,6 +15,7 @@ #include <vespa/persistence/dummyimpl/dummypersistence.h> #include <vespa/persistence/spi/test.h> #include <vespa/storage/bucketdb/bucketmanager.h> +#include <vespa/storage/persistence/bucketownershipnotifier.h> #include <vespa/storage/persistence/filestorage/filestorhandlerimpl.h> #include <vespa/storage/persistence/filestorage/filestormanager.h> #include <vespa/storage/persistence/filestorage/modifiedbucketchecker.h> diff --git a/storage/src/vespa/storage/persistence/mergehandler.cpp b/storage/src/vespa/storage/persistence/mergehandler.cpp index 2287c3f6ff6..b2904c6d67b 100644 --- a/storage/src/vespa/storage/persistence/mergehandler.cpp +++ b/storage/src/vespa/storage/persistence/mergehandler.cpp @@ -426,6 +426,7 @@ MergeHandler::fetchLocalData( } document::BucketIdFactory idFactory; + const std::shared_ptr<const document::DocumentTypeRepo> repo = _env._component.getTypeRepo()->documentTypeRepo; for (const auto& entry_ptr : entries) { const auto& docEntry = *entry_ptr; @@ -460,7 +461,7 @@ MergeHandler::fetchLocalData( e.toString().c_str(), docEntry.toString().c_str()); } } - e._repo = _env._repo.get(); + e._repo = repo.get(); } for (auto& e : diff) { diff --git a/storage/src/vespa/storage/persistence/persistenceutil.cpp b/storage/src/vespa/storage/persistence/persistenceutil.cpp index 6ddda93011a..59baf3b4fd3 100644 --- a/storage/src/vespa/storage/persistence/persistenceutil.cpp +++ b/storage/src/vespa/storage/persistence/persistenceutil.cpp @@ -168,7 +168,6 @@ PersistenceUtil::PersistenceUtil( _nodeIndex(component.getIndex()), _metrics(metrics), _bucketFactory(component.getBucketIdFactory()), - _repo(component.getTypeRepo()->documentTypeRepo), _spi(provider) { } diff --git a/storage/src/vespa/storage/persistence/persistenceutil.h b/storage/src/vespa/storage/persistence/persistenceutil.h index 535bf379a89..a98bc1e4e9a 100644 --- a/storage/src/vespa/storage/persistence/persistenceutil.h +++ b/storage/src/vespa/storage/persistence/persistenceutil.h @@ -101,7 +101,6 @@ struct PersistenceUtil { uint16_t _nodeIndex; FileStorThreadMetrics &_metrics; // Needs a better solution for speed and thread safety const document::BucketIdFactory &_bucketFactory; - const std::shared_ptr<const document::DocumentTypeRepo> _repo; spi::PersistenceProvider &_spi; PersistenceUtil( diff --git a/storage/src/vespa/storage/persistence/testandsethelper.cpp b/storage/src/vespa/storage/persistence/testandsethelper.cpp index aad82887984..c4b7be73cbe 100644 --- a/storage/src/vespa/storage/persistence/testandsethelper.cpp +++ b/storage/src/vespa/storage/persistence/testandsethelper.cpp @@ -47,8 +47,9 @@ TestAndSetHelper::TestAndSetHelper(const PersistenceUtil & env, const spi::Persi _docTypePtr(_cmd.getDocumentType()), _missingDocumentImpliesMatch(missingDocumentImpliesMatch) { - resolveDocumentType(*env._repo); - parseDocumentSelection(*env._repo); + const std::shared_ptr<const document::DocumentTypeRepo> _repo = _env._component.getTypeRepo()->documentTypeRepo; + resolveDocumentType(*_repo); + parseDocumentSelection(*_repo); } TestAndSetHelper::~TestAndSetHelper() = default; |