diff options
author | Martijn van Groningen <martijn.v.groningen@gmail.com> | 2017-06-28 17:10:30 +0200 |
---|---|---|
committer | Martijn van Groningen <martijn.v.groningen@gmail.com> | 2017-06-28 17:10:30 +0200 |
commit | 9ce9c21b836834070c584c97a35d2e232d8478d0 (patch) | |
tree | 0afa7f26ffb486234261ad1211fc6dc7c127b9cb | |
parent | f2eeceb10dab1a7ebe736dfd32333bd0886e43d8 (diff) |
docs: added percolator script query limitation
-rw-r--r-- | docs/reference/mapping/types/percolator.asciidoc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/docs/reference/mapping/types/percolator.asciidoc b/docs/reference/mapping/types/percolator.asciidoc index 1a5121ae30..68b734f0c8 100644 --- a/docs/reference/mapping/types/percolator.asciidoc +++ b/docs/reference/mapping/types/percolator.asciidoc @@ -85,9 +85,15 @@ fail. [float] ==== Limitations +[float] +===== Parent/child + Because the `percolate` query is processing one document at a time, it doesn't support queries and filters that run against child documents such as `has_child` and `has_parent`. +[float] +===== Fetching queries + There are a number of queries that fetch data via a get call during query parsing. For example the `terms` query when using terms lookup, `template` query when using indexed scripts and `geo_shape` when using pre-indexed shapes. When these queries are indexed by the `percolator` field type then the get call is executed once. So each time the `percolator` @@ -95,3 +101,11 @@ query evaluates these queries, the fetches terms, shapes etc. as the were upon i is that fetching of terms that these queries do, happens both each time the percolator query gets indexed on both primary and replica shards, so the terms that are actually indexed can be different between shard copies, if the source index changed while indexing. + +[float] +===== Script query + +The script inside a `script` query can only access doc values fields. The `percolate` query indexes the provided document +into an in-memory index. This in-memory index doesn't support stored fields and because of that the `_source` field and +other stored fields are not stored. This is the reason why in the `script` query the `_source` and other stored fields +aren't available. |