| Index: impl/prod/raw_datastore.go
|
| diff --git a/impl/prod/raw_datastore.go b/impl/prod/raw_datastore.go
|
| index 7eadfe3d2b080551765643cb0c7e8cf14332bc5c..9543ecc26ea490516f5a154a3078d5746ddc3408 100644
|
| --- a/impl/prod/raw_datastore.go
|
| +++ b/impl/prod/raw_datastore.go
|
| @@ -182,7 +182,6 @@ func (d rdsImpl) DecodeCursor(s string) (ds.Cursor, error) {
|
| }
|
|
|
| func (d rdsImpl) Run(fq *ds.FinalizedQuery, cb ds.RawRunCB) error {
|
| - tf := typeFilter{}
|
| q, err := d.fixQuery(fq)
|
| if err != nil {
|
| return err
|
| @@ -193,6 +192,7 @@ func (d rdsImpl) Run(fq *ds.FinalizedQuery, cb ds.RawRunCB) error {
|
| cfunc := func() (ds.Cursor, error) {
|
| return t.Cursor()
|
| }
|
| + tf := typeFilter{}
|
| for {
|
| k, err := t.Next(&tf)
|
| if err == datastore.Done {
|
| @@ -207,6 +207,15 @@ func (d rdsImpl) Run(fq *ds.FinalizedQuery, cb ds.RawRunCB) error {
|
| }
|
| }
|
|
|
| +func (d rdsImpl) Count(fq *ds.FinalizedQuery) (int64, error) {
|
| + q, err := d.fixQuery(fq)
|
| + if err != nil {
|
| + return 0, err
|
| + }
|
| + ret, err := q.Count(d)
|
| + return int64(ret), err
|
| +}
|
| +
|
| func (d rdsImpl) RunInTransaction(f func(c context.Context) error, opts *ds.TransactionOptions) error {
|
| ropts := (*datastore.TransactionOptions)(opts)
|
| return datastore.RunInTransaction(d, f, ropts)
|
|
|