[ZODB-Dev] Checking transaction status?

Christian Robottom Reis kiko@async.com.br
Tue, 10 Jul 2001 18:46:20 -0300 (BRT)


On Tue, 10 Jul 2001, Jim Fulton wrote:

>   - The transaction implementation needs to be replaceable,
>     so that you can implement different transaction management
>     policies. I'd like to see:
>
>     o Transactions moved into a separate package (from ZODB)
>
>     o Some attention given to making transactions more controllable.

Right, like having multiple levels of transactions, and separate
transaction spaces? Because this sort of control inflicts chance upon your
second stated requirement:

>   - There has to be a way for objects find the transaction manager
>     globally. This seems to mean that there can only be one
>     transaction per thread. Maybe there should be a version of
>     get_transaction that lets you pass an argument (e.g. a connection)
>     that that could contain data for deciding what transaction to return.
>     Hm. This deserves some more thought.

What I think would be nice is to have separate transaction "spaces" for
lack of a better word. In non-Web applications, it's customary to have
tabbed dialogs in which each tab can have separate data objects being
manipulated. It's nice to have switches between tabs not abort the current
transaction, but it's impossible to do so now without behaving very
unpredictably (to say, abort with one tab active causes all tab data to
revert).

I'm quite sure this could happen on a Web app with a similar setup and a
persistent transaction state.

Take care,
--
/\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil
~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311