Ok, yes this does look like a bug so if you could raise an issue on github and post the issue link back in this thread, that would be great.
Thanks Colin On Tuesday, 2 September 2014 15:23:23 UTC+1, Owain Braddick wrote: > > Hi, > > I hit exactly the same issue today. It seems that the problem occurs when > the number of buckets in the outer geohash grid aggregation goes above a > certain number (around 50 in my tests but that could be system dependent). > The stack trace is below but doesn't tell much. If someone can confirm this > is a bug I am happy to raise an issue. > > [2014-09-02 14:46:54,698][DEBUG][action.search.type ] [3-D Man] > [typename][0], node[sEDEsE4GQ2yqxVb5njslDQ], [P], s[STARTED]: Failed to > execute [org.elasticsearch.action.search.SearchRequest@37a97844] lastShard > [true] > org.elasticsearch.search.query.QueryPhaseExecutionException: > [typename][0]: > query[filtered(filtered(fieldname:other)->*:*)->cache(_type:indexname)],from[0],size[10]: > > Query Failed [Failed to execute main query] > at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:162) > at > org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:261) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:206) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:203) > at > org.elasticsearch.search.action.SearchServiceTransportAction$23.run(SearchServiceTransportAction.java:517) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Caused by: java.lang.ArrayIndexOutOfBoundsException > [2014-09-02 14:46:54,699][DEBUG][action.search.type ] [3-D Man] > [typename][3], node[sEDEsE4GQ2yqxVb5njslDQ], [P], s[STARTED]: Failed to > execute [org.elasticsearch.action.search.SearchRequest@37a97844] lastShard > [true] > org.elasticsearch.search.query.QueryPhaseExecutionException: > [typename][3]: > query[filtered(filtered(fieldname:other)->*:*)->cache(_type:indexname)],from[0],size[10]: > > Query Failed [Failed to execute main query] > at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:162) > at > org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:261) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:206) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:203) > at > org.elasticsearch.search.action.SearchServiceTransportAction$23.run(SearchServiceTransportAction.java:517) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Caused by: java.lang.ArrayIndexOutOfBoundsException > [2014-09-02 14:46:54,707][DEBUG][action.search.type ] [3-D Man] > [typename][4], node[sEDEsE4GQ2yqxVb5njslDQ], [P], s[STARTED]: Failed to > execute [org.elasticsearch.action.search.SearchRequest@37a97844] lastShard > [true] > org.elasticsearch.search.query.QueryPhaseExecutionException: > [typename][4]: > query[filtered(filtered(fieldname:other)->*:*)->cache(_type:indexname)],from[0],size[10]: > > Query Failed [Failed to execute main query] > at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:162) > at > org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:261) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:206) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:203) > at > org.elasticsearch.search.action.SearchServiceTransportAction$23.run(SearchServiceTransportAction.java:517) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Caused by: java.lang.ArrayIndexOutOfBoundsException > [2014-09-02 14:46:54,708][DEBUG][action.search.type ] [3-D Man] > [typename][1], node[sEDEsE4GQ2yqxVb5njslDQ], [P], s[STARTED]: Failed to > execute [org.elasticsearch.action.search.SearchRequest@37a97844] lastShard > [true] > org.elasticsearch.search.query.QueryPhaseExecutionException: > [typename][1]: > query[filtered(filtered(fieldname:other)->*:*)->cache(_type:indexname)],from[0],size[10]: > > Query Failed [Failed to execute main query] > at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:162) > at > org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:261) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:206) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:203) > at > org.elasticsearch.search.action.SearchServiceTransportAction$23.run(SearchServiceTransportAction.java:517) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Caused by: java.lang.ArrayIndexOutOfBoundsException > [2014-09-02 14:46:54,713][DEBUG][action.search.type ] [3-D Man] > [typename][2], node[sEDEsE4GQ2yqxVb5njslDQ], [P], s[STARTED]: Failed to > execute [org.elasticsearch.action.search.SearchRequest@37a97844] > org.elasticsearch.search.query.QueryPhaseExecutionException: > [typename][2]: > query[filtered(filtered(fieldname:other)->*:*)->cache(_type:indexname)],from[0],size[10]: > > Query Failed [Failed to execute main query] > at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:162) > at > org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:261) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:206) > at > org.elasticsearch.search.action.SearchServiceTransportAction$5.call(SearchServiceTransportAction.java:203) > at > org.elasticsearch.search.action.SearchServiceTransportAction$23.run(SearchServiceTransportAction.java:517) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > Caused by: java.lang.ArrayIndexOutOfBoundsException > [2014-09-02 14:46:54,714][DEBUG][action.search.type ] [3-D Man] All > shards failed for phase: [query] > > > On Friday, July 25, 2014 2:47:39 PM UTC+1, Colin Goodheart-Smithe wrote: >> >> Could you post the full stack trace from the elasticsearch log file? This >> will help in working out where the query falls over >> >> Thanks >> >> On Friday, 25 July 2014 01:18:49 UTC+1, svartalf wrote: >>> >>> It is really odd, but it failed for me on the precision levels 6 and 7 >>> with a ArrayIndexOutOfBoundsException, and working for 5 and 8 levels. >>> >>> I had put a big query examples here: >>> https://gist.github.com/svartalf/5db600e7ea2907fbda3a >>> >>> >>> четверг, 24 июля 2014 г., 18:05:30 UTC+9 пользователь Colin >>> Goodheart-Smithe написал: >>>> >>>> I think the problem is that you have an extra aggregations object >>>> surrounding the geo_bounds aggregation. Try the following: >>>> >>>> curl -XGET "http://localhost:9200/postings/_search" -d' >>>> { >>>> "query": { >>>> "filtered": { >>>> "filter": { >>>> "geo_bounding_box": { >>>> "point": { >>>> "bottom_right": [ >>>> 104.45856200712711, >>>> 52.208730692828844 >>>> ], >>>> "top_left": [ >>>> 104.19077025908017, >>>> 52.34035674074375 >>>> ] >>>> } >>>> } >>>> }, >>>> "query": { >>>> "match_all": {} >>>> } >>>> } >>>> }, >>>> "aggregations": { >>>> "cells": { >>>> "geohash_grid": { >>>> "field": "point", >>>> "precision": 6 >>>> }, >>>> "aggregations": { >>>> "lat": { >>>> "avg": { >>>> "script": "doc[\"point\"].lat" >>>> } >>>> }, >>>> "lon": { >>>> "avg": { >>>> "script": "doc[\"point\"].lon" >>>> } >>>> }, >>>> "hits": { >>>> "top_hits": { >>>> "_source": { >>>> "include": [ >>>> "short_description" >>>> ] >>>> }, >>>> "size": 1 >>>> } >>>> }, >>>> "bounds": { >>>> "geo_bounds": { >>>> "field": "point" >>>> } >>>> } >>>> } >>>> } >>>> }, >>>> "size": 0 >>>> }' >>>> >>>> On Thursday, 24 July 2014 09:32:10 UTC+1, svartalf wrote: >>>>> >>>>> Here is an example: >>>>> https://gist.github.com/svartalf/c3cb76c40dd4fa1374fa >>>>> >>>>> I'm using two inner aggregation functions, and with "top_hits" >>>>> removed, "geo_bounds" works sometimes, and sometimes fails with a >>>>> `response_2.json` (in the example) or `response_3.json`. >>>>> With an enabled "top_hits" aggregator it is also throwing >>>>> `response_1.json` text. >>>>> >>>>> I'm trying to group points into the buckets and annotate them with a >>>>> top_hit item and geo bounds for each bucket, and got stuck a little. >>>>> Maybe >>>>> I should move one of those two aggregations one level deeper? >>>>> >>>>> четверг, 24 июля 2014 г., 16:52:01 UTC+9 пользователь Colin >>>>> Goodheart-Smithe написал: >>>>>> >>>>>> You should be able to achieve this with the below query. If you >>>>>> still cannot get it working could you provide a cURL example which >>>>>> reproduces your issue? >>>>>> >>>>>> curl -XGET "http://localhost:9200/geo/_search" -d' >>>>>> { >>>>>> "size": 0, >>>>>> "aggs": { >>>>>> "geohash" : { >>>>>> "geohash_grid": { >>>>>> "field": "location", >>>>>> "precision": 3 >>>>>> }, >>>>>> "aggs": { >>>>>> "subbounds": { >>>>>> "geo_bounds": { >>>>>> "field": "location" >>>>>> } >>>>>> } >>>>>> } >>>>>> } >>>>>> } >>>>>> }' >>>>>> >>>>>> On Thursday, 24 July 2014 07:46:31 UTC+1, svartalf wrote: >>>>>>> >>>>>>> Is there any way to use geo_bounds as a sub aggregator? >>>>>>> >>>>>>> I have a geohash_grid aggregation, and it will be very useful to get >>>>>>> bounds for each bucket of the data. >>>>>>> Right now my ES 1.3.0 says that he "Could not find aggregator type >>>>>>> [bounds] in [aggregations]]". >>>>>>> >>>>>> -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/3fcdd090-5cb2-4a96-bdc3-740f94e63bb8%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
