Atomikos Forum |
|
We had been on 4.0.0M4 for a very long time and are trying out 4.0.2 right now. For the upgrade we have simply changing Maven dependency version from 4.0.0M4 to 4.0.2. We have started seeing a large number of operation time outs after the upgrade. Scenarios that work fine with 4.0.0M4 time out after upgrading to 4.0.2. We have not made any other changes like configuration settings.
We are using Atomikos with Spring Data JPA and Hibernate. The relevant configuration is shown below: <bean class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="jpaProperties"> <props> ... <prop key="hibernate.transaction.jta.platform">com.atomikos.icatch.jta.hibernate4.AtomikosPlatform</prop> </props> </property> <property name="jtaDataSource"> <bean class="com.atomikos.jdbc.AtomikosDataSourceBean" init-method="init" destroy-method="close"> <property name="uniqueResourceName" value="dataSource"/> <property name="xaDataSource"> <bean class="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource" lazy-init="true"> <property name="password" value="someunknownpassword"/> <property name="url" value="jdbc:mysql://localhost/somedatabase"/> <property name="user" value="someuser"/> </bean> </property> <property name="borrowConnectionTimeout" value="3000"/> <property name="defaultIsolationLevel" value="4"/> <property name="maxPoolSize" value="25"/> <property name="minPoolSize" value="5"/> </bean> </property> </bean> The error is: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is javax.transaction.RollbackException: Prepare: NO vote Caused by: javax.transaction.RollbackException: Prepare: NO vote Caused by: com.atomikos.icatch.RollbackException: Prepare: NO vote at com.atomikos.icatch.imp.ActiveStateHandler.prepare(ActiveStateHandler.java:202) at com.atomikos.icatch.imp.CoordinatorImp.prepare(CoordinatorImp.java:523) at com.atomikos.icatch.imp.CoordinatorImp.terminate(CoordinatorImp.java:687) at com.atomikos.icatch.imp.CompositeTransactionImp.commit(CompositeTransactionImp.java:282) at com.atomikos.icatch.jta.TransactionImp.commit(TransactionImp.java:172)
I can confirm that downgrading to 4.0.0M4 gets rid of the time outs immediately for exactly the same set of operations.
4.0.1 has similar behaviour with time outs for even shorter operations. Has a new time out value been introduced or the value for an existing one changed in 4.0.1? |