| Index: impl/memory/datastore_query.go
|
| diff --git a/impl/memory/datastore_query.go b/impl/memory/datastore_query.go
|
| index e4f00716a65a413d2702baf3f1d602877f05d71d..ab34629e14160d6c8934347b64c5c56aa23a225a 100644
|
| --- a/impl/memory/datastore_query.go
|
| +++ b/impl/memory/datastore_query.go
|
| @@ -5,13 +5,13 @@
|
| package memory
|
|
|
| import (
|
| - "bytes"
|
| "errors"
|
| "fmt"
|
| "math"
|
| "strings"
|
|
|
| ds "github.com/luci/gae/service/datastore"
|
| + "github.com/luci/gae/service/datastore/serialize"
|
| )
|
|
|
| const MaxQueryComponents = 100
|
| @@ -246,7 +246,7 @@ func (q *queryImpl) Ancestor(k ds.Key) ds.Query {
|
| // SDK has an explicit nil-check
|
| return errors.New("datastore: nil query ancestor")
|
| }
|
| - if !ds.KeyValid(k, false, globalAppID, q.ns) {
|
| + if !k.Valid(false, globalAppID, q.ns) {
|
| // technically the SDK implementation does a Weird Thing (tm) if both the
|
| // stringID and intID are set on a key; it only serializes the stringID in
|
| // the proto. This means that if you set the Ancestor to an invalid key,
|
| @@ -297,13 +297,12 @@ func (q *queryImpl) Filter(fStr string, val interface{}) ds.Query {
|
| }
|
|
|
| if p.Type() == ds.PTKey {
|
| - if !ds.KeyValid(p.Value().(ds.Key), false, globalAppID, q.ns) {
|
| + if !p.Value().(ds.Key).Valid(false, globalAppID, q.ns) {
|
| return ds.ErrInvalidKey
|
| }
|
| }
|
|
|
| - buf := &bytes.Buffer{}
|
| - p.Write(buf, ds.WithoutContext)
|
| + binVal = string(serialize.ToBytes(p))
|
|
|
| if prop == "__key__" {
|
| if op == qEqual {
|
| @@ -331,7 +330,6 @@ func (q *queryImpl) Filter(fStr string, val interface{}) ds.Query {
|
| "cannot project on field which is used in an equality filter: %q",
|
| prop)
|
| }
|
| - binVal = buf.String()
|
| return
|
| },
|
| func(q *queryImpl) {
|
|
|