I have a connection leak problem with my J2EE App.
I setup a JDBC driver that logs all JDBC activity and from there I can see that the last time each connection was used, it performs the same transaction:
servlet calls SLSB A (start transaction)
SLSB A calls some EB's (resulting only in selects)
SLSB A calls SLSB B that does an insert in table A
SLSB A calls a Java object that calls some EB's (resulting only in selects)
SLSB A calls a Java object that calls SLSB B that does an update of same record in table A
call to SLSB A returns (commit)
After this, the connection is never reused.
I am pretty confident that all ResultSet, statements and Connection are closed since I do it in finally blocks.
My SLSB have transaction attribute Required for all methods.
Is there any possibility that despite the fact that I see Conn.commit() in JDBC log, the transaction does not really commit and prevents the connection to be reused?
This problem is particularly painful since ut happens only on our production system and not on other JBoss 3.0.x test or production's Jboss 2.4.9 systems.
Thanks in advance for your help,