aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp')
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp b/searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp
index 2263876c04e..f3b83e08546 100644
--- a/searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/searchable_doc_subdb_configurer.cpp
@@ -158,11 +158,12 @@ reconfigure(const DocumentDBConfig &newConfig,
const DocumentDBConfig &oldConfig,
const ReconfigParams &params,
IDocumentDBReferenceResolver &resolver,
- const DocumentSubDBReconfig& prepared_reconfig)
+ const DocumentSubDBReconfig& prepared_reconfig,
+ search::SerialNum serial_num)
{
assert(!params.shouldAttributeManagerChange());
AttributeCollectionSpec attrSpec(AttributeCollectionSpec::AttributeList(), 0, 0);
- reconfigure(newConfig, oldConfig, std::move(attrSpec), params, resolver, prepared_reconfig);
+ reconfigure(newConfig, oldConfig, std::move(attrSpec), params, resolver, prepared_reconfig, serial_num);
}
namespace {
@@ -195,12 +196,14 @@ SearchableDocSubDBConfigurer::reconfigure(const DocumentDBConfig &newConfig,
AttributeCollectionSpec && attrSpec,
const ReconfigParams &params,
IDocumentDBReferenceResolver &resolver,
- const DocumentSubDBReconfig& prepared_reconfig)
+ const DocumentSubDBReconfig& prepared_reconfig,
+ search::SerialNum serial_num)
{
bool shouldMatchViewChange = prepared_reconfig.has_matchers_changed();
bool shouldSearchViewChange = false;
bool shouldFeedViewChange = params.shouldSchemaChange();
- search::SerialNum currentSerialNum = attrSpec.getCurrentSerialNum();
+ auto& attr_spec_serial_num = attrSpec.getCurrentSerialNum();
+ assert(!attr_spec_serial_num.has_value() || attr_spec_serial_num.value() == serial_num);
SearchView::SP searchView = _searchView.get();
auto matchers = prepared_reconfig.matchers();
IReprocessingInitializer::UP initializer;
@@ -219,7 +222,7 @@ SearchableDocSubDBConfigurer::reconfigure(const DocumentDBConfig &newConfig,
attrWriter = newAttrWriter;
shouldFeedViewChange = true;
initializer = createAttributeReprocessingInitializer(newConfig, newAttrMgr, oldConfig, oldAttrMgr,
- _subDbName, currentSerialNum);
+ _subDbName, serial_num);
} else if (params.shouldAttributeWriterChange()) {
attrWriter = std::make_shared<AttributeWriter>(attrMgr);
shouldFeedViewChange = true;