I am working on implementing a XA transaction timeout for client driver in DERBY-2509
https://issues.apache.org/jira/browse/DERBY-2509
which should behave the same way as described in comments of DERBY-2508.

XAResource interface has functions set/getTransactionTimeout which provides the only interface to the application to manage the timeout value. DRDA protocol does not have terms which might be used for this but timeout for xa transaction might be present in a SYNCCTL term when starting a new unit of work. It's ok to remember the timeout in the client driver and send it to server every time XAResource.start function is called with TMNOFLAGS.

However, the javadoc on XAResource.getTransactionTimeout
http://java.sun.com/javase/6/docs/api/javax/transaction/xa/XAResource.html#getTransactionTimeout()
requires that when the function is called before any call to setTransactionTimeout it should return the default value of the resource manager. I have not found any DRDA term which can be directly used to obtain the default value from the server. Does anybody has an idea how this could be done?

Thanks,

Julo

Reply via email to