Just to update. I have copied all my entities over into a new HR datastore,
and I am having the EXACT same problems. It wasn't hard to copy the
entities, but transfering the endpoints, and everything else has been a
significant amount of work.
My problem is that adding an order by clause to my query limits the amount
of results that are returned. I have an entity named Transaction with the
following index:
<datastore-index kind="Transaction" ancestor="true">
<property name="feedbackReceived" direction="desc"/>
</datastore-index>
feedbackReceived is a date. If I run this query
SELECT * FROM Transaction
WHERE ANCESTOR IS
KEY('ah5zfmhpZ2h2b2x1bWVzZWxsZXItZmVlZGJhY2twcm9yDwsSB0FjY291bnQY6cUVDA')
The top result shows a feedbackReceived date of 2011-04-28 14:29:00
If I run this query:
SELECT * FROM Transaction
WHERE ANCESTOR IS
KEY('ah5zfmhpZ2h2b2x1bWVzZWxsZXItZmVlZGJhY2twcm9yDwsSB0FjY291bnQY6cUVDA')
ORDER BY feedbackReceived DESC
the first result comes back with a date of 2011-04-11 04:49:00
This happens if I run the query in the datastore viewer or using the
objectify API.
I have tried:
- vacuuming and rebuilding indexes
- re-putting all entities using a MapReduce job
- copying all of my entities from a standard datastore app to a new HR
datastore app using the database_admin module.
I was told that since it never worked for me, that I would have to wait for
the bug to be fixed which is over two years old. This bug pretty much
renders the datastore unusable for the long-term, and I don't know how other
apps are managing. I think Google is really having a hard time with this,
and they know they dropped the ball. It's a matter of damage control from
this point. Look at this bug report, it is quite pathetic:
http://code.google.com/p/googleappengine/issues/detail?can=2&q=2481&colspec=ID%20Type%20Component%20Status%20Stars%20Summary%20Language%20Priority%20Owner%20Log&id=2481
Google, I wish you would have been honest and upfront about the semantics of
your DS and HR DS, so I wouldn't have spent all my time and energy building
an application for your platform. Basically that this is a get/put only
datastore and if you try to use any type of filtering you are screwed.
Pissed.
John
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en.