"Ben Sizer" <[EMAIL PROTECTED]> writes:

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

It isn't guaranteed by TG.  I believe that if I started two transactions on
the DB, the second one starting before the first expires the visit.  Thinking
about PostgreSQL that uses MVCC -- so this becomes database dependent -- then
I'd have two snapshots one with the visit expired and the second with the
visit still OK. 

For this specific second request it'd still be able to retrieve data from the
database, but a third transaction started right after the expiration has been
commited by the first transaction wouldn't be able to do it since in this new
snapshot the visit would have already expired.

Adding to this there's also the isolation level from the database (it is
possible to serialize all transactions, it is possible to read uncommited
data, etc. -- it all depends on your database implementation of these
isolation levels). 

I dunno if I was clear here.  If not, ask for more :-)

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

No.  I haven't used threads with SO.  And I'm holding myself on it, thinking
about doing new apps with SA... 

-- 
Jorge Godoy      <[EMAIL PROTECTED]>

--~--~---------~--~----~------------~-------~--~----~
 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