/--- On Fri, Aug 18, 2000 at 06:19:43PM -0400, Chaim Frenkel wrote:
| I don't think you should even attempt to version/transaction
| protect
| a tied variable. Anything that leaves the memory or could leave
| the
| memory (e.g. socket write) should probably not be versioned.
|
| Unless the tied variable somehow is able to tie itself into the
| transaction manager. It is up for grabs.
|
| But if it participates then as far as the 'caller' or user is
| concerned
| it looks like a variable and acts like a variable. It must be a
| variable.
\---
I think versioning a tied variable is not a nightmare or a bad
thing. Imagine you have tied hash to a DBM variable: YOU make the
transaction management, because dbm doesn't have (ok, berkeley has,
but forget it for a moment) proper transaction handling.
If you prefer, we can add a new function to the tie interface for
ensuring the proper transaction behavoiur. For example we can make
an flock when we FETCH (SH), STORE (EX), and we can release a lock
on ROLLBACK or COMMIT. If ROLLBACK is not defined, then the system
automatically calls STORE with the old value. Is it sounds sane?
Tied interface transaction-enable can be good, belive me!
dLux
--
... Végy egy Magnumot és fogd rá a Nyuszira!