every transaction is associated with a single thread. This is,
because things can only "go wrong" when threads interfere when changing data; so
within one thread, the execution order is clear. This means, that a transaction
can only be committed or rolled back within the same thread as it has been created in.
Note: Usually, this in nothing the programmer has to deal with, because the
currentTransaction of BNZTransactionalNotificationCenter always returns the transaction
for the current thread. But it may be unsafe to retrieve a transaction, store it somewhere
and commit it later, when there may be a change in the executing thread or when the
transaction is passed to another thread
an exception type that is thrown when a transaction has already been committed or rolled back and any method is called that changes the internal state of the transaction (i.e., not only retrieve data from the transaction). These methods are: prepare, commit, rollback, turnOffAutoCommit, setRollbackOnly, and addAtomicChange
(Last Updated 8/31/2006)