Hi Dasarath,
a tx can be terminated in 2 ways: using the tx object and using the tm. in the
latter case it is the current tx but in the former it could be any tx. the
resume is there so that termination operation of a tx, does not come under the
current tx-- if any. there is a bug here, we need to check whethere the tx is
null before we resume it in line 27. please send in a patch. thanks a lot.
OK, we (silently and incorrectly) assumed that clients should always
call commit() on the TransactionManager, not directly on the transaction
object.
Why should we check whether tx != null on line 27 ? resume() happily
accepts a null tx as long as the current thread isn't already associated
with an transaction object.
Actually, there could be a bug anyways: if the thread is already
associated with a transaction and resume is called with exactly that
transaction, we should not throw an exception
Best regards,
-hannes
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]