Hey,
I'm using es 1.7 and I'd like to start playing with the significant_terms aggregation.
Im using elasticsearch-dsl-py, printing the query as a dict:
{
"aggs": {
"myterms": {
"significant_terms": {
"background_filter": {
"filtered": {
"query": {
"bool": {
"minimum_should_match": 1,
"must": [{
"query_string": {
"query": "*"
}
}]
}
}
}
},
"field": "cause",
"size": 10
}
}
},
"query": {
"bool": {
"minimum_should_match": 1,
"must": [{
"query_string": {
"query": " originIP:*"
}
}]
}
}
}
I get
elasticsearch.exceptions.RequestError: TransportError(400, 'SearchPhaseExecutionException[Failed to execute phase [query], all shards failed; shardFailures {[E3qocB6eRFC5prFYyb5b_g][email-probe-day-2016-04-20][0]: RemoteTransportException[[a6es-e19-es1][inet[/10.28.9.31:9301]][indices:data/read/search[phase/query]]]; nested: SearchParseException[[email-probe-day-2016-04-20][0]: query[+originIP:*],from[-1],size[-1]: Parse Failure [Failed to parse source [{"query": {"bool": {"must": [{"query_string": {"query": " originIP:*"}}], "minimum_should_match": 1}}, "aggs": {"myterms": {"significant_terms": {"field": "cause", "background_filter": {"filtered": {"query": {"bool": {"must": [{"query_string": {"query": " *"}}], "minimum_should_match": 1}}}}, "size": 10}}}}]]]; nested: QueryParsingException[[email-probe-day-2016-04-20] No filter registered for [filtered]]; }
Is background_filter so limited or what am I doing wrong? Thanks