Re: [appengine-java] Best practice for multithreaded access/update to entity
Perfect, exactly the info I needed! Thanks a lot Jeff. Peter -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Best practice for multithreaded access/update to entity
Hi Ikai, Could you expand your answer a little? Do you mean that I don't need to manage a timestap/version if I use transactions? Or do you mean I should use transactions to combine a read (to check for a changed timestamp/version) with a write? If I don't manage the timestamp myself, how does AppEngine know another process change the data since the last read? part of the key? Sorry for those beginner questions, I started using the datastore via the JDO API with a relational background, but it looks it isn't always the best fit for typical datastore issues. Objectify looks much better as it is specifically designed for it. Thanks every one for your answers Peter -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Best practice for multithreaded access/update to entity
I have an application that accesses a user entity. This entity also contains a number of user specific settings that the user can update. Some of those settings are updated by different servlets in parallel (for instance uploading a profile picture to the blobstore) I'm having some serious issues keeping everything in sync. If I'm not careful, I can easily overwrite updates that have been done in another thread. I have the feeling this is a recurring issue for many GAE application, so I'm looking for some best practices of how to deal with it. In the relational world, often a "version" column is added. Before updating a row, the version number in the database is compared to the one in memory. I suppose I can implement something like that on GAE too, but I was wondering whether there are better/other options available in the NoSQL world. Regards, Peter -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.