summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-09-25 13:21:28 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2023-09-25 15:18:09 +0000
commit5b23add95126aa0f36a9b16c25facacfd9949fc4 (patch)
tree11bc530f972687db78faa3524e8f600786e66c58 /searchcore
parentb4af421142168c36cc1e8c9bae735731a68fcb20 (diff)
- Use stash instead of the single use of VariableSizeVector.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/docsummary/docsumcontext.cpp19
1 files changed, 4 insertions, 15 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/docsummary/docsumcontext.cpp b/searchcore/src/vespa/searchcore/proton/docsummary/docsumcontext.cpp
index be1c8941f65..e1820ece0e3 100644
--- a/searchcore/src/vespa/searchcore/proton/docsummary/docsumcontext.cpp
+++ b/searchcore/src/vespa/searchcore/proton/docsummary/docsumcontext.cpp
@@ -52,22 +52,11 @@ DocsumContext::initState()
_docsumState._args.initFromDocsumRequest(req);
_docsumState._docsumbuf.clear();
_docsumState._docsumbuf.reserve(req.hits.size());
- for (uint32_t i = 0; i < req.hits.size(); i++) {
- _docsumState._docsumbuf.push_back(req.hits[i].docid);
+ for (const auto & hit : req.hits) {
+ _docsumState._docsumbuf.push_back(hit.docid);
}
}
-namespace {
-
-vespalib::Slime::Params
-makeSlimeParams(size_t chunkSize) {
- Slime::Params params;
- params.setChunkSize(chunkSize);
- return params;
-}
-
-}
-
vespalib::Slime::UP
DocsumContext::createSlimeReply()
{
@@ -75,11 +64,11 @@ DocsumContext::createSlimeReply()
_docsumState._args.get_fields());
_docsumWriter.initState(_attrMgr, _docsumState, rci);
const size_t estimatedChunkSize(std::min(0x200000ul, _docsumState._docsumbuf.size()*0x400ul));
- vespalib::Slime::UP response(std::make_unique<vespalib::Slime>(makeSlimeParams(estimatedChunkSize)));
+ auto response = std::make_unique<vespalib::Slime>(Slime::Params(estimatedChunkSize));
Cursor & root = response->setObject();
Cursor & array = root.setArray(DOCSUMS);
const Symbol docsumSym = response->insert(DOCSUM);
- _docsumState._omit_summary_features = (rci.res_class != nullptr) ? rci.res_class->omit_summary_features() : true;
+ _docsumState._omit_summary_features = (rci.res_class == nullptr) || rci.res_class->omit_summary_features();
uint32_t num_ok(0);
for (uint32_t docId : _docsumState._docsumbuf) {
if (_request.expired() ) { break; }