diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-07-02 18:35:02 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-07-02 18:35:02 +0200 |
commit | 7fe5ed56aeb183da725c7225a01f23d2d91d99de (patch) | |
tree | 2b31b302c0aca379073f6bd193df93da32c16189 /searchcore | |
parent | 59a1f9116e9cc37d749caa4ea7b0bf05662eae29 (diff) |
Add DocsumBlobEntryFilter to limit types in docsum blob.
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp | 4 | ||||
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/docsummary/summarymanager.cpp | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp b/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp index 3550b38383a..1aae840d6c9 100644 --- a/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp +++ b/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp @@ -101,6 +101,10 @@ void DocumentStoreAdapter::convertFromSearchDoc(Document &doc, uint32_t docId) { for (size_t i = 0; i < _resultClass->GetNumEntries(); ++i) { + if (i != _resultPacker.get_entry_idx()) { + // Entry is not present in docsum blob + continue; + } const ResConfigEntry * entry = _resultClass->GetEntry(i); const vespalib::string fieldName(entry->_bindname); bool markup = _markupFields.find(fieldName) != _markupFields.end(); diff --git a/searchcore/src/vespa/searchcore/proton/docsummary/summarymanager.cpp b/searchcore/src/vespa/searchcore/proton/docsummary/summarymanager.cpp index a04f5bfa651..5256fca7e14 100644 --- a/searchcore/src/vespa/searchcore/proton/docsummary/summarymanager.cpp +++ b/searchcore/src/vespa/searchcore/proton/docsummary/summarymanager.cpp @@ -93,7 +93,8 @@ SummarySetup(const vespalib::string & baseDir, const DocTypeName & docTypeName, _repo(repo), _markupFields() { - auto resultConfig = std::make_unique<ResultConfig>(); + DocsumBlobEntryFilter docsum_blob_entry_filter; + auto resultConfig = std::make_unique<ResultConfig>(docsum_blob_entry_filter); if (!resultConfig->ReadConfig(summaryCfg, make_string("SummaryManager(%s)", baseDir.c_str()).c_str())) { std::ostringstream oss; ::config::OstreamConfigWriter writer(oss); |