What does the XDBC session timeout do, and how does it work?
27 October 2015 05:10 PM


The session timeout in the XDBC Admin UI page controls the timeout of the server session object. This is different from the XCC client session object. The XCC client session object does not close itself based on a timeout.


Every time a request comes into an XDBC application server, the counter on its associated server session timeout is reset. For example, given a 60 second server session timeout, that 60 second counter is reset when a second request is received, regardless of how long an XCC client thread might sleep.

Multi-Statement Transactions

However, if the XCC client code were to instead use multi-statement transactions, then you'd see the following error:

SEVERE [1] (SessionImpl.throwIllegalState): Cannot commit without an active transaction

Multi-statement transaction client code needs to specifically include a call to Session.setTransactionMode at the beginning, and a call to Session.commit at the end. When using multi-statement transactions, if the client thread's sleep duration is set to be less than the XDBC application server session timeout, then that request should complete without error.

(0 vote(s))
Not helpful

Comments (0)