@@ -6,6 +6,9 @@ WARNING: The Profile API is a debugging tool and adds significant overhead to s
6
6
The Profile API provides detailed timing information about the execution of individual components
7
7
in a search request. It gives the user insight into how search requests are executed at a low level so that
8
8
the user can understand why certain requests are slow, and take steps to improve them.
9
+ Note that the Profile API, <<profile-limitations, amongst other things>>, doesn't measure
10
+ network latency, time spent in the search fetch phase, time spent while the requests spends
11
+ in queues or while merging shard responses on the coordinating node.
9
12
10
13
The output from the Profile API is *very* verbose, especially for complicated requests executed across
11
14
many shards. Pretty-printing the response is recommended to help understand the output
@@ -834,8 +837,12 @@ There are also cases where special Lucene optimizations are disabled, since they
834
837
could cause some queries to report larger relative times than their non-profiled counterparts, but in general should
835
838
not have a drastic effect compared to other components in the profiled query.
836
839
840
+ [[profile-limitations]]
837
841
==== Limitations
838
842
843
+ - Profiling currently does not measure the search fetch phase nor the network overhead
844
+ - Profiling also does not account for time spent in the queue, merging shard responses on the coordinating node or
845
+ additional work like e.g. building global ordinals (an internal data structure used to speed up search)
839
846
- Profiling statistics are currently not available for suggestions, highlighting, `dfs_query_then_fetch`
840
847
- Profiling of the reduce phase of aggregation is currently not available
841
848
- The Profiler is still highly experimental. The Profiler is instrumenting parts of Lucene that were
0 commit comments