aboutsummaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@yahoo-inc.com>2017-05-18 10:01:52 +0200
committerJon Bratseth <bratseth@yahoo-inc.com>2017-05-18 10:01:52 +0200
commit97b632d12a35cace208764df3ca7ecc7f7e20755 (patch)
treed72776d8e760fec8cbfb67f157868ebcf3a54e64 /container-search
parent623249fc88caa0099073e26906f48e61be96816e (diff)
Add fill tracing skeleton
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/searchchain/Execution.java32
1 files changed, 29 insertions, 3 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/searchchain/Execution.java b/container-search/src/main/java/com/yahoo/search/searchchain/Execution.java
index 2d7125e390b..b53ade45d07 100644
--- a/container-search/src/main/java/com/yahoo/search/searchchain/Execution.java
+++ b/container-search/src/main/java/com/yahoo/search/searchchain/Execution.java
@@ -566,19 +566,45 @@ public class Execution extends com.yahoo.processing.execution.Execution {
/** Calls fill on the next searcher in this chain. If there is no next, nothing is done. */
public void fill(Result result, String summaryClass) {
timer.sampleFill(nextIndex(), context.getDetailedDiagnostics());
- Searcher next = (Searcher)next(); // TODO: Allow but skip processors which are not searchers
- if (next == null) return;
+ Searcher current = (Searcher)next(); // TODO: Allow but skip processors which are not searchers
+ if (current == null) return;
try {
nextProcessor();
- next.ensureFilled(result, summaryClass, this);
+ onInvokingFill(current, result, summaryClass);
+ current.ensureFilled(result, summaryClass, this);
}
finally {
previousProcessor();
+ onReturningFill(current, result, summaryClass);
timer.sampleFillReturn(nextIndex(), context.getDetailedDiagnostics(), result);
}
}
+ private void onInvokingFill(Searcher searcher, Result result, String summaryClass) {
+ /* TODO
+ final int traceDependencies = 6;
+ Query query = (Query) request;
+ if (query.getTraceLevel() >= traceDependencies) {
+ query.trace(new StringBuilder().append(processor.getId())
+ .append(" ").append(processor.getDependencies().toString())
+ .toString(), traceDependencies);
+ }
+ */
+ }
+
+ private void onReturningFill(Searcher searcher, Result result, String summaryClass) {
+ /* TODO
+ final int traceDependencies = 6;
+ Query query = (Query) request;
+ if (query.getTraceLevel() >= traceDependencies) {
+ query.trace(new StringBuilder().append(processor.getId())
+ .append(" ").append(processor.getDependencies().toString())
+ .toString(), traceDependencies);
+ }
+ */
+ }
+
/** Calls ping on the next search in this chain. If there is no next, a Pong is created and returned. */
public Pong ping(Ping ping) {
// return this reference, not directly. It's needed for adding time data