Запрос агрегации Elasticsearch игнорирует родительский фильтр при установке min_doc_count в 0 в агрегации дочерних терминов - PullRequest
0 голосов
/ 07 марта 2019

Если я запускаю этот запрос в Elasticsearch, он возвращает набор сегментов, агрегирующий в поле name.Не возвращать ни одного документа с полем type 1 Это правильно.

{:size=>0,
 :aggs=>
  {:agg=>
    {:filter=>{:term=>{"type"=>1}},
     :aggs=>{:agg=>{:terms=>{:field=>"name", :min_doc_count=>1}}}}}}

Теперь, если я выполню этот же запрос, изменим only min_doc_count до 0 .Затем он игнорирует родительский фильтр агрегации и возвращает все документов независимо от их типа.

{:size=>0,
 :aggs=>
  {:agg=>
    {:filter=>{:term=>{"type"=>1}},
     :aggs=>{:agg=>{:terms=>{:field=>"name", :min_doc_count=>0}}}}}}

Я не понимаю этого поведения.Мой запрос искажен?Как это исправить?

Я использую Elasticsearch 6.x и использую его через гем Elasticsearch Rails.

...