1 Reply Latest reply on Sep 17, 2002 2:07 AM by David Jencks

    NoTxCM Deadlock

    John Peters Newbie

      We're having a problem using the JBoss 3.0 ManagedConnectionPool/NoTxCM service JCA stuff with Oracle 8.1.7.4.1. We've configured the connection using the sample Oracle-service.xml file included in the distribution.

      Everything seems to work good; we can access the connection in code, we can run queries, update the database etc. The catch is, occassionally, during an update, the connection is "lost". By this I mean that the update transaction has not been committed or rolled back. From Oracle's standpoint, the transaction is still live and Oracle waits for the commit/rollback; which locks the table for selects, etc.

      It was our understanding that the NoTxCM service was supposed to automatically provide the commits. We've verified that the connection is closed properly (i.e. we have a "finally" block that insures that the connection gets closed no matter what).

      Incidentally, the last line in the log file when this occurs is "[org.jboss.resource.connectionmanager.IdleRemover] run: IdleRemover notifying pools, interval: 150000". So, as a test, we tried to disable the IdleTimeout stuff. Since the IdleTimeoutEnable attribute doesn't seem to exist anymore, we changed our IdleTimeoutMinutes to 0. Since we did this, we haven't had the problem.

      Any ideas? Listed below is our configuration...


      <depends optional-attribute-name="ManagedConnectionFactoryName">
      <!--embedded mbean-->

      AptiMailDataSource


      <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@10.7.40.210:1521:apDB</config-property>
      <config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>
      <!--set these only if you want only default logins, not through JAAS -->
      <config-property name="UserName" type="java.lang.String">DDDD</config-property>
      <config-property name="Password" type="java.lang.String">DDDD</config-property>


      <!--Below here are advanced properties -->
      <!--hack-->
      <depends optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper



      <depends optional-attribute-name="ManagedConnectionPool">
      <!--embedded mbean-->

      1
      5
      5000
      0
      ByNothing



      <depends optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager
      <depends optional-attribute-name="JaasSecurityManagerService">jboss.security:name=JaasSecurityManager

      <!--make the rar deploy! hack till better deployment-->
      jboss.jca:service=RARDeployer

        • 1. Re: NoTxCM Deadlock
          David Jencks Master

          Is there any chance you could check with either 3.0.2 or 3.2 to make sure the problem is still present and if it is file a bug report assigned to me, including your info that turning off the idle remover helps?

          If you can't check with one of these versions please just file the bug report. It would be more useful to know it is still a problem since I may not be able to reproduce the problem easily.

          Thanks
          david jencks