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.

Reply via email to