Chromium Code Reviews| Index: service/datastore/query.go |
| diff --git a/service/datastore/query.go b/service/datastore/query.go |
| index fc30f5f686808fc6f697a000c6be3bdf94e0cf65..8b9bf42bfa7148c6f208eed12e442f9a17150e23 100644 |
| --- a/service/datastore/query.go |
| +++ b/service/datastore/query.go |
| @@ -575,6 +575,12 @@ func (q *Query) Finalize() (*FinalizedQuery, error) { |
| ret.distinct = q.distinct && q.project.Len() > 0 |
| } |
| + // If we're DISTINCT && have an inequality filter, we must project that |
| + // inequality property as well. |
| + if ret.distinct && ret.ineqFiltProp != "" && !q.project.Has(ret.ineqFiltProp) { |
| + ret.project = append([]string{ret.ineqFiltProp}, ret.project...) |
| + } |
|
iannucci
2016/02/27 01:04:26
ah... yeah it technically works here too, I was th
|
| + |
| seenOrders := stringset.New(len(q.order)) |
| // if len(q.order) > 0, we already enforce that the first order |