On Nov 3, 1:43 pm, Jorge Godoy <[EMAIL PROTECTED]> wrote:
> "Ben Sizer" <[EMAIL PROTECTED]> writes:
> > However, I still wonder if things like identity are handled properly
> > there - eg. if I'm logged in, make a request in one window to log out,
> > and in the other window I submit a form which repeated accesses
> > identity.current in the controller, what will happen? Exception raised
> > in the form's controller? One request or the other gets blocked until
> > the other completes? What about SQLObject - does it have any caching,
> > and if you modify the same object in different threads what happens to
> > that cache?
> Using tabs it is handled properly: both share the same session and when I
> logout it expires, so when the other tab tries accessing the app it reaches an
> expired id and is redirected to the login screen.

So that means that each request is handled sequentially... is that
guaranteed by TurboGears?

> On the TG side I believe that as long as they're all inside transactions it
> will be safe that you'll get results right from the database.  On your
> external code side you'd better adopt a similar approach starting and
> commiting transactions explicitly.  SO will honor your request to commit data
> and when the transaction on the TG app reads from the DB it will get this
> commited data from it.

Ok... do you know how that ties in with the use of
'sqlobject.util.threadinglocal'? 

-- 
Ben Sizer


--~--~---------~--~----~------------~-------~--~----~
 You received this message because you are subscribed to the Google Groups 
"TurboGears" 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/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to