Are you executing in a transaction? get()s in a transaction always show the entity "frozen in time" as of the start of the transaction. Even if you put() a change, get() will show the old value until the transaction is committed.
Jeff On Tue, Dec 6, 2011 at 10:26 PM, Phil McDonnell <phil.a.mcdonn...@gmail.com>wrote: > I'm in java on GWT app engine and I'm having some intermittent issues > where it looks like datastore put() commands are not being reflected by > subsequent get() calls. From my reading I thought this was not possible. > Am I mistaken? > > Here's what I'm doing... > > // STATE A > Entity x = ... > datastore.put(x); > // STATE B > ... > x = ... some new values ... > datastore.put(x); > // STATE C > ... > datastore.get(keyOfX); > > > The final get() sometimes returns an x of state C and sometimes it returns > an x of state B. Any idea why this happens? I'm assuming it's some sort > of concurrency thing within my app, but perhaps I've misunderstood the > datastore guarantees? Should the get() always get an x from state C? > > Thanks, > Phil > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine" group. > To post to this group, send email to google-appengine@googlegroups.com. > To unsubscribe from this group, send email to > google-appengine+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > -- We are the 20% -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.