# Bucket Sorting by Metrics in Elastic 2.x

**URL:** <https://discuss.elastic.co/t/bucket-sorting-by-metrics-in-elastic-2-x/36885>\
**Category:** Elasticsearch\
**Created:** [December 10, 2015, 2:26pm UTC](https://discuss.elastic.co/t/bucket-sorting-by-metrics-in-elastic-2-x/36885 "2015-12-10T14:26:11Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![tottlefields](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tottlefields/32/5164_2.png) [@tottlefields](https://discuss.elastic.co/u/tottlefields)\
**Post date:** [December 10, 2015, 2:26pm UTC](https://discuss.elastic.co/t/bucket-sorting-by-metrics-in-elastic-2-x/36885/1 "2015-12-10T14:26:11Z")

</div>

Hi All,

I have an index containing 2 index types. I am trying to create buckets in the disease\_locus index\_type (3 docs) based on a link to the hits index\_type (12 docs).

I am aggregating the hits documents based on a term that links these docs to their "parent" doc (not an official parent-child doc relationship) in the disease\_locus index and I then want to sort the buckets that are returned but a min value in the bucket, which is filtered from a nested document in the hits. This worked in 1.7 but since upgrading to 2.x I cannot get the query to work, I get the following error...

> Invalid terms aggregation order path [build\_filter\>filtered\_result\>locus\_start.value]. Terms buckets can only be sorted on a sub-aggregator path that is built out of zero or more single-bucket aggregations within the path and a final single-bucket or a metrics aggregation at the path end. Sub-path [build\_filter] points to non single-bucket aggregation

I can provide mapping and data to replicate the error but the character limit on this post means I wasn't able to upload.

Query that I am trying to run which throws the error...

> GET /regions\_test/\_search?size=0&pretty  
> {"query":{"bool":{"must":[{"nested":{"query":{"term":{"build\_info.build":38}},"path":"build\_info"}}]}},"aggregations":{"build\_info":{"aggs":{"seq\_hits":{"terms":{"field":"build\_info.seqid","size":0},"aggs":{"disease\_hits":{"reverse\_nested":{},"aggs":{"diseases\_by\_seqid":{"terms":{"field":"disease\_locus","size":0,"order":{"build\_filter\>filtered\_result\>locus\_start":"asc"}},"aggs":{"build\_filter":{"aggs":{"filtered\_result":{"filter":{"query":{"match":{"build\_info.build":38}}},"aggs":{"locus\_start":{"min":{"field":"build\_info.start"}}}}},"nested":{"path":"build\_info"}}}}}}}}},"nested":{"path":"build\_info"}}}}

If anybody could point out why my _ **order":{"build\_filter\>filtered\_result\>locus\_start":"asc"}** _ isn't working I would be most grateful.

Yours,  
Ellen.

---

<div class="post-metadata">

**Author:** ![tottlefields](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tottlefields/32/5164_2.png) [@tottlefields](https://discuss.elastic.co/u/tottlefields)\
**Post date:** [December 10, 2015, 2:26pm UTC](https://discuss.elastic.co/t/bucket-sorting-by-metrics-in-elastic-2-x/36885/2 "2015-12-10T14:26:38Z")

</div>

Mapping for index..

> ["{"regions\_latest":{"mappings":{"disease\_locus":{"properties":{"disease":{"type":"string"},"hits":{"type":"string"},"locus\_id":{"type":"string","index":"not\_analyzed"},"region":{"type":"string","index":"not\_analyzed"},"seqid":{"type":"string"}}},"hits":{"properties":{"build\_info":{"type":"nested","properties":{"build":{"type":"integer"},"end":{"type":"integer"},"seqid":{"type":"string"},"start":{"type":"integer"}}},"disease":{"type":"string"},"disease\_locus":{"type":"string","index":"not\_analyzed"}}}}}}"]

Test data for hits index\_type...

> [{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jrt9ou-fWOUOsy","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":5988280,"end":6136651,"seqid":"10"},{"build":37,"start":6030243,"end":6178614,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jwt9ou-fWOUO7b","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":5988280,"end":6128337,"seqid":"10"},{"build":37,"start":6030243,"end":6170300,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jyt9ou-fWOUPDq","\_score":0,"\_source":{"disease":"MS","disease\_locus":"MS\_10001","build\_info":[{"build":38,"start":5988280,"end":6134149,"seqid":"10"},{"build":37,"start":6030243,"end":6176112,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jwt9ou-fWOUO-K","\_score":0,"\_source":{"disease":"MS","disease\_locus":"MS\_10001","build\_info":[{"build":38,"start":5988280,"end":6129961,"seqid":"10"},{"build":37,"start":6030243,"end":6171924,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jst9ou-fWOUOt-","\_score":0,"\_source":{"disease":"MS","disease\_locus":"MS\_10001","build\_info":[{"build":38,"start":5988280,"end":6134149,"seqid":"10"},{"build":37,"start":6030243,"end":6176112,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jrt9ou-fWOUOr5","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":5988280,"end":6134149,"seqid":"10"},{"build":37,"start":6030243,"end":6176112,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jwt9ou-fWOUO7d","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":5988280,"end":6132638,"seqid":"10"},{"build":37,"start":6030243,"end":6174601,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jrt9ou-fWOUOsz","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10002","build\_info":[{"build":38,"start":6388017,"end":6503142,"seqid":"10"},{"build":37,"start":6429979,"end":6545104,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jyt9ou-fWOUPDp","\_score":0,"\_source":{"disease":"MS","disease\_locus":"MS\_10001","build\_info":[{"build":38,"start":5988280,"end":6131453,"seqid":"10"},{"build":37,"start":6030243,"end":6173416,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","_id":"AVGGe7jst9ou-fWOUOt_","\_score":0,"\_source":{"disease":"MS","disease\_locus":"MS\_10001","build\_info":[{"build":38,"start":5988280,"end":6131453,"seqid":"10"},{"build":37,"start":6030243,"end":6173416,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jwt9ou-fWOUO7e","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":6035365,"end":6146375,"seqid":"10"},{"build":37,"start":6077328,"end":6188338,"seqid":"10"}]}}  
> ,{"\_index":"regions\_latest","\_type":"hits","\_id":"AVGGe7jyt9ou-fWOUPDC","\_score":0,"\_source":{"disease":"T1D","disease\_locus":"T1D\_10001","build\_info":[{"build":38,"start":5988280,"end":6136651,"seqid":"10"},{"build":37,"start":6030243,"end":6178614,"seqid":"10"}]}}]

Test data for disease\_locus index\_type...

> [{"\_index":"regions\_latest","\_type":"disease\_locus","\_id":"T1D\_10002","\_score":0,"\_source":{"hits":["AVGGe7jrt9ou-fWOUOsz"],"disease":"T1D","locus\_id":"T1D\_10002"}}  
> ,{"\_index":"regions\_latest","\_type":"disease\_locus","\_id":"MS\_10001","\_score":0,"_source":{"hits":["AVGGe7jst9ou-fWOUOt-","AVGGe7jwt9ou-fWOUO-K","AVGGe7jyt9ou-fWOUPDq","AVGGe7jst9ou-fWOUOt_","AVGGe7jyt9ou-fWOUPDp"],"disease":"MS","locus\_id":"MS\_10001"}}  
> ,{"\_index":"regions\_latest","\_type":"disease\_locus","\_id":"T1D\_10001","\_score":0,"\_source":{"hits":["AVGGe7jrt9ou-fWOUOr5","AVGGe7jrt9ou-fWOUOsy","AVGGe7jwt9ou-fWOUO7b","AVGGe7jwt9ou-fWOUO7d","AVGGe7jyt9ou-fWOUPDC","AVGGe7jwt9ou-fWOUO7e"],"disease":"T1D","locus\_id":"T1D\_10001"}}]

---

<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:** [July 5, 2017, 11:32pm UTC](https://discuss.elastic.co/t/bucket-sorting-by-metrics-in-elastic-2-x/36885/3 "2017-07-05T23:32:02Z")

</div>


