I don't think it's related to transactions. As Ian mentioned above,
this behaviour is probably caused by in-memory cashing of the entire
datastore by the development server.

This is inconsistent with how the datastore works in production. While
there's a chance it won't be fixed, this behaviour at least should be
documented, as was the single-process nature of the development web
server. Filing an issue will speed this up.

On Jan 29, 1:40 pm, 3x3x3 <nerd.l...@gmail.com> wrote:
> Thanks for quick reply.
>
> Before filing an issue, let my problem clear enough.
>
> Fromhttp://code.google.com/appengine/docs/python/datastore/transactions.html
>
> > The transaction function may be called multiple times if a datastore
> > operation fails due to another user updating entities in the entity
> > group at the same time.
>
> Since dev_appserver serves only one request at a time and
> running multiple server instances could not see datastore update each
> other.
>
> Is there any other way to test above scenario on local dev_appserver ?
>
> On Jan 29, 10:42 am, Alexander Kojevnikov <alexan...@kojevnikov.com>
> wrote:
>
> > Just tried it and indeed a new entity created from the first server's
> > admin does not appear in the admin of the second server. However,
> > after restarting the second server, the entity is there. Same thing
> > when deleting or updating the entities.
>
> > I suggest that you file an issue and post the link here so that we
> > could star it:http://code.google.com/p/googleappengine/issues/list
>
> > On Jan 29, 12:18 pm, 3x3x3 <nerd.l...@gmail.com> wrote:
>
> > > Alex, thanks for your help.
>
> > > I want to make some concurrent requests to test my transaction logic
> > > on local dev_appserver.py.
>
> > > I tried to run two instances of dev_appserver.py with different port:
> > > 8080 and 9000.
> > > I didn't specify the datastore location path and supposed that both of
> > > the two server instances share the same datastore.
>
> > > I created a entity by using the development 
> > > consolehttp://localhost:8080/_ah/admin/datastore.
> > > But I could NOT see the entity via the second dev_appserver instance
> > > consolehttp://localhost:9000/_ah/admin/datastore.
>
> > > Am I using dev_appserver in a wrong way?
>
> > > On Jan 28, 9:25 pm, Alexander Kojevnikov <alexan...@kojevnikov.com>
> > > wrote:
>
> > > > Yes, the development server can serve only one request at a 
> > > > time:http://code.google.com/appengine/docs/python/tools/devserver.html#Usi...
>
> > > > On Jan 28, 9:03 pm, 3x3x3 <nerd.l...@gmail.com> wrote:
>
> > > > > I run dev_appserver.py in Windows.
> > > > > I add time.sleep(10) in one of my scripts and send request to that
> > > > > script in browser.
> > > > > During sleep, I send another request to other script in another
> > > > > browser window.
>
> > > > > It's seem that the second request is blocked until the first one has
> > > > > done.
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to