summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-12-20 11:45:31 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-12-20 11:45:31 +0000
commit1a7551d121e8dfbf9f3accfbb9731628e8968a04 (patch)
tree68073e3d6edc89c75630bdd821e79b8a33a45eb8 /searchcore
parent24d224ff74817ccf47ba5356cd002fecc2cec1c6 (diff)
Add more details to the trace.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp13
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/match_tools.h4
-rw-r--r--searchcore/src/vespa/searchcore/proton/matching/matcher.cpp5
-rw-r--r--searchcore/src/vespa/searchcore/proton/reference/document_db_reference_resolver.cpp4
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.cpp2
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.h6
6 files changed, 23 insertions, 11 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp b/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
index 05b70cfb8bf..b16af14fcf5 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
+++ b/searchcore/src/vespa/searchcore/proton/matching/match_tools.cpp
@@ -5,6 +5,7 @@
#include <vespa/searchcorespi/index/indexsearchable.h>
#include <vespa/searchlib/fef/indexproperties.h>
#include <vespa/searchlib/fef/ranksetup.h>
+#include <vespa/searchlib/engine/request.h>
#include <vespa/searchlib/parsequery/stackdumpiterator.h>
#include <vespa/searchlib/attribute/diversity.h>
#include <vespa/searchlib/attribute/attribute_operation.h>
@@ -150,8 +151,7 @@ MatchToolsFactory(QueryLimiter & queryLimiter,
const vespalib::Doom & doom,
ISearchContext & searchContext,
IAttributeContext & attributeContext,
- vespalib::stringref queryStack,
- const vespalib::string & location,
+ const search::engine::Request &request,
const ViewResolver & viewResolver,
const IDocumentMetaStore & metaStore,
const IIndexEnvironment & indexEnv,
@@ -169,22 +169,28 @@ MatchToolsFactory(QueryLimiter & queryLimiter,
_diversityParams(),
_valid(false)
{
+ request.trace().addEvent(4, "MTF: Start");
_query.setWhiteListBlueprint(metaStore.createWhiteListBlueprint());
- _valid = _query.buildTree(queryStack, location, viewResolver, indexEnv,
+ request.trace().addEvent(5,"MTF: Build query");
+ _valid = _query.buildTree(request.getStackRef(), request.location, viewResolver, indexEnv,
rankSetup.split_unpacking_iterators(),
rankSetup.delay_unpacking_iterators());
if (_valid) {
_query.extractTerms(_queryEnv.terms());
_query.extractLocations(_queryEnv.locations());
+ request.trace().addEvent(5,"MTF: reserve handles");
_query.reserveHandles(_requestContext, searchContext, _mdl);
_query.optimize();
+ request.trace().addEvent(4,"MTF: Fetch Postings");
_query.fetchPostings();
_query.freeze();
+ request.trace().addEvent(5,"MTF: prepareSharedState");
_rankSetup.prepareSharedState(_queryEnv, _queryEnv.getObjectStore());
_diversityParams = extractDiversityParams(_rankSetup, rankProperties);
DegradationParams degradationParams = extractDegradationParams(_rankSetup, rankProperties);
if (degradationParams.enabled()) {
+ request.trace().addEvent(5,"MTF: Build MatchPhaseLimiter");
_match_limiter = std::make_unique<MatchPhaseLimiter>(metaStore.getCommittedDocIdLimit(), searchContext.getAttributes(),
_requestContext, degradationParams, _diversityParams);
}
@@ -192,6 +198,7 @@ MatchToolsFactory(QueryLimiter & queryLimiter,
if ( ! _match_limiter) {
_match_limiter = std::make_unique<NoMatchPhaseLimiter>();
}
+ request.trace().addEvent(4,"MTF: Complete");
}
MatchToolsFactory::~MatchToolsFactory() = default;
diff --git a/searchcore/src/vespa/searchcore/proton/matching/match_tools.h b/searchcore/src/vespa/searchcore/proton/matching/match_tools.h
index 5cf2919198a..abe31299a17 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/match_tools.h
+++ b/searchcore/src/vespa/searchcore/proton/matching/match_tools.h
@@ -21,6 +21,7 @@ namespace search::fef {
class RankProgram;
class RankSetup;
}
+namespace search::engine { class Request; }
namespace proton::matching {
class MatchTools
@@ -109,8 +110,7 @@ public:
const vespalib::Doom & softDoom,
ISearchContext &searchContext,
search::attribute::IAttributeContext &attributeContext,
- vespalib::stringref queryStack,
- const vespalib::string &location,
+ const search::engine::Request &request,
const ViewResolver &viewResolver,
const search::IDocumentMetaStore &metaStore,
const search::fef::IIndexEnvironment &indexEnv,
diff --git a/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp b/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp
index 4c353a4b802..db1c3f200f7 100644
--- a/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp
+++ b/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp
@@ -153,8 +153,8 @@ Matcher::create_match_tools_factory(const search::engine::Request &request, ISea
_stats.softDoomFactor(), factor, hasFactorOverride, vespalib::count_ns(safeLeft));
}
vespalib::Doom doom(_clock, safeDoom, request.getTimeOfDoom(), hasFactorOverride);
- return std::make_unique<MatchToolsFactory>(_queryLimiter, doom, searchContext, attrContext, request.getStackRef(),
- request.location, _viewResolver, metaStore, _indexEnv, *_rankSetup,
+ return std::make_unique<MatchToolsFactory>(_queryLimiter, doom, searchContext, attrContext, request,
+ _viewResolver, metaStore, _indexEnv, *_rankSetup,
rankProperties, feature_overrides);
}
@@ -213,6 +213,7 @@ Matcher::match(const SearchRequest &request, vespalib::ThreadBundle &threadBundl
owned_objects.feature_overrides = std::make_unique<Properties>(*feature_overrides);
feature_overrides = owned_objects.feature_overrides.get();
}
+
MatchToolsFactory::UP mtf = create_match_tools_factory(request, searchContext, attrContext,
metaStore, *feature_overrides);
isDoomExplicit = mtf->getRequestContext().getDoom().isExplicitSoftDoom();
diff --git a/searchcore/src/vespa/searchcore/proton/reference/document_db_reference_resolver.cpp b/searchcore/src/vespa/searchcore/proton/reference/document_db_reference_resolver.cpp
index 592dc26623d..7f2ac5db768 100644
--- a/searchcore/src/vespa/searchcore/proton/reference/document_db_reference_resolver.cpp
+++ b/searchcore/src/vespa/searchcore/proton/reference/document_db_reference_resolver.cpp
@@ -174,9 +174,7 @@ DocumentDBReferenceResolver::DocumentDBReferenceResolver(const IDocumentDBRefere
{
}
-DocumentDBReferenceResolver::~DocumentDBReferenceResolver()
-{
-}
+DocumentDBReferenceResolver::~DocumentDBReferenceResolver() = default;
ImportedAttributesRepo::UP
DocumentDBReferenceResolver::resolve(const IAttributeManager &newAttrMgr,
diff --git a/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.cpp b/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.cpp
index b967e745b1f..57ef2d1a45c 100644
--- a/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.cpp
@@ -125,6 +125,8 @@ DocumentDBMaintenanceConfig::DocumentDBMaintenanceConfig()
{
}
+DocumentDBMaintenanceConfig::~DocumentDBMaintenanceConfig() = default;
+
DocumentDBMaintenanceConfig::
DocumentDBMaintenanceConfig(const DocumentDBPruneRemovedDocumentsConfig &pruneRemovedDocuments,
const DocumentDBHeartBeatConfig &heartBeat,
diff --git a/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.h b/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.h
index 283d66e8295..604977aa04f 100644
--- a/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.h
+++ b/searchcore/src/vespa/searchcore/proton/server/document_db_maintenance_config.h
@@ -103,7 +103,6 @@ private:
public:
DocumentDBMaintenanceConfig();
-
DocumentDBMaintenanceConfig(const DocumentDBPruneRemovedDocumentsConfig &pruneRemovedDocuments,
const DocumentDBHeartBeatConfig &heartBeat,
vespalib::duration sessionCachePruneInterval,
@@ -114,6 +113,11 @@ public:
const BlockableMaintenanceJobConfig &blockableJobConfig,
const DocumentDBFlushConfig &flushConfig);
+ DocumentDBMaintenanceConfig(const DocumentDBMaintenanceConfig &) = delete;
+ DocumentDBMaintenanceConfig & operator = (const DocumentDBMaintenanceConfig &) = delete;
+ ~DocumentDBMaintenanceConfig();
+
+
bool
operator==(const DocumentDBMaintenanceConfig &rhs) const;