| Index: service/datastore/query.go
|
| diff --git a/service/datastore/query.go b/service/datastore/query.go
|
| index fc30f5f686808fc6f697a000c6be3bdf94e0cf65..2e60b90cda8e90ce8fe0b95f88a21635cd6d3dcd 100644
|
| --- a/service/datastore/query.go
|
| +++ b/service/datastore/query.go
|
| @@ -573,6 +573,12 @@ func (q *Query) Finalize() (*FinalizedQuery, error) {
|
| if q.project != nil {
|
| ret.project = q.project.ToSlice()
|
| 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...)
|
| + }
|
| }
|
|
|
| seenOrders := stringset.New(len(q.order))
|
|
|