# No result back when doing nested aggregation using java api

**URL:** <https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669>\
**Category:** Elasticsearch\
**Created:** [November 21, 2016, 4:52am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669 "2016-11-21T04:52:10Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![itplayer](https://avatars.discourse-cdn.com/v4/letter/i/d26b3c/32.png) [@itplayer](https://discuss.elastic.co/u/itplayer)\
**Post date:** [November 21, 2016, 4:52am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/1 "2016-11-21T04:52:10Z")

</div>

I bumped into a situation that when I send a query through http rest, I get result, but when equivalent aggregation send from java api, I can get result back.

I use Elasticsearch v1.7.2

here is my query send to http REST

```
{
    "from" : 0,
    "size" : 0,
    "query" : {
        "filtered" : {
            "query" : {
                "match_all" : {}
            },
            "filter" : {
                "match_all" : {}
            }
        }
    },
    "aggregations" : {
        "byCategory" : {
            "nested" : {
                "path" : "categoryStatus"
            },
            "aggregations" : {
                "sumByProductCount" : {
                    "sum" : {
                        "field" : "categoryStatus.productCount"
                    }
                }
            }
        }
    }
}

```

here is equivalent aggregation use java api

```
AbstractAggregationBuilder agg =
        AggregationBuilders.nested("byCategory").path("categoryStatus").subAggregation(
                        sum("sumByProductCount").field("categoryStatus.productCount")
                );

```

Any idea?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [November 21, 2016, 6:46am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/2 "2016-11-21T06:46:06Z")

</div>

No. your aggregation builder looks good.

---

<div class="post-metadata">

**Author:** ![itplayer](https://avatars.discourse-cdn.com/v4/letter/i/d26b3c/32.png) [@itplayer](https://discuss.elastic.co/u/itplayer)\
**Post date:** [November 21, 2016, 7:06am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/3 "2016-11-21T07:06:48Z")

</div>

So what is the potential problem? Java API library?  
I stuck on this many days and I don't want to shift code to use WebRequest directly to http REST to get result.  
I can't upgrade ES to new version currently, have to stay on 1.7.2.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [November 21, 2016, 7:48am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/4 "2016-11-21T07:48:39Z")

</div>

I can't tell you. I don't have access to your code and you did not share it with us.

---

<div class="post-metadata">

**Author:** ![itplayer](https://avatars.discourse-cdn.com/v4/letter/i/d26b3c/32.png) [@itplayer](https://discuss.elastic.co/u/itplayer)\
**Post date:** [November 21, 2016, 9:18am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/5 "2016-11-21T09:18:19Z")

</div>

> [@itplayer](#):
>
> ```
> AbstractAggregationBuilder agg =
> AggregationBuilders.nested("byCategory").path("categoryStatus").subAggregation(
> sum("sumByProductCount").field("categoryStatus.productCount")
> );
> 
> ```

Above code is how I construct query that using java API (official elastic java client) and send it to ES.

What information I missed to provide, please help guide me. many thanks.  
I do see there are many "doc mapped as nested object" will cause problem during aggregation, but seems in my case, rest api send me correct result.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [November 21, 2016, 9:35am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/6 "2016-11-21T09:35:11Z")

</div>

How do you use this `agg` object would be a good start?  
How you know the Java response is incorrect?

Share anything which can help to reproduce your problem.

A simple Java Test class would be super useful (create index, put the mapping, index a doc, then search).

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [December 19, 2016, 9:35am UTC](https://discuss.elastic.co/t/no-result-back-when-doing-nested-aggregation-using-java-api/66669/7 "2016-12-19T09:35:18Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
