[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow reassigned WFLY-11360:
-----------------------------------
Assignee: Scott Marlow (was: Tom Jenkinson)
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Apparently we are doing a JNDI lookup of "java:jboss/TransactionSynchronizationRegistry" for Hibernate ORM integration, which means we are using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper for Hibernate ORM. Should we also be using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper class in other WildFly call sites, instead of org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry?
> Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
> {code}
> Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
> Lastly, the following call stack shows the Hibernate ORM sync being correctly registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:52:20,820 ERROR [stderr] (pool-7-thread-1) java.lang.Exception: Stack trace
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.registerInterposedSynchronization(JCAOrderedLastSynchronizationList.java:64)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper.registerInterposedSynchronization(TransactionSynchronizationRegistryWrapper.java:76)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.hibernate5.service.WildFlyCustomJtaPlatform$1.registerSynchronization(WildFlyCustomJtaPlatform.java:45)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.registerSynchronization(AbstractJtaPlatform.java:126)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.joinJtaTransaction(JtaTransactionCoordinatorImpl.java:170)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.pulse(JtaTransactionCoordinatorImpl.java:158)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.<init>(JtaTransactionCoordinatorImpl.java:94)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl.buildTransactionCoordinator(JtaTransactionCoordinatorBuilderImpl.java:29)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSharedSessionContract.<init>(AbstractSharedSessionContract.java:204)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSessionImpl.<init>(AbstractSessionImpl.java:29)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionImpl.<init>(SessionImpl.java:254)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl$SessionBuilderImpl.openSession(SessionFactoryImpl.java:1290)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.buildEntityManager(SessionFactoryImpl.java:628)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:614)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:154)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.createEntityManager(TransactionScopedEntityManager.java:187)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:157)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.AbstractEntityManager.joinTransaction(AbstractEntityManager.java:536)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:93)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow reassigned WFLY-11360:
-----------------------------------
Assignee: David Lloyd (was: Scott Marlow)
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: David Lloyd
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Apparently we are doing a JNDI lookup of "java:jboss/TransactionSynchronizationRegistry" for Hibernate ORM integration, which means we are using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper for Hibernate ORM. Should we also be using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper class in other WildFly call sites, instead of org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry?
> Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
> {code}
> Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
> Lastly, the following call stack shows the Hibernate ORM sync being correctly registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:52:20,820 ERROR [stderr] (pool-7-thread-1) java.lang.Exception: Stack trace
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.registerInterposedSynchronization(JCAOrderedLastSynchronizationList.java:64)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper.registerInterposedSynchronization(TransactionSynchronizationRegistryWrapper.java:76)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.hibernate5.service.WildFlyCustomJtaPlatform$1.registerSynchronization(WildFlyCustomJtaPlatform.java:45)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.registerSynchronization(AbstractJtaPlatform.java:126)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.joinJtaTransaction(JtaTransactionCoordinatorImpl.java:170)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.pulse(JtaTransactionCoordinatorImpl.java:158)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.<init>(JtaTransactionCoordinatorImpl.java:94)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl.buildTransactionCoordinator(JtaTransactionCoordinatorBuilderImpl.java:29)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSharedSessionContract.<init>(AbstractSharedSessionContract.java:204)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSessionImpl.<init>(AbstractSessionImpl.java:29)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionImpl.<init>(SessionImpl.java:254)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl$SessionBuilderImpl.openSession(SessionFactoryImpl.java:1290)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.buildEntityManager(SessionFactoryImpl.java:628)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:614)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:154)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.createEntityManager(TransactionScopedEntityManager.java:187)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:157)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.AbstractEntityManager.joinTransaction(AbstractEntityManager.java:536)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:93)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11361) Test LookupTestCase fails with security manager
by Martin Choma (Jira)
Martin Choma created WFLY-11361:
-----------------------------------
Summary: Test LookupTestCase fails with security manager
Key: WFLY-11361
URL: https://issues.jboss.org/browse/WFLY-11361
Project: WildFly
Issue Type: Bug
Components: EE, Test Suite
Affects Versions: 15.0.0.Beta1
Reporter: Martin Choma
{noformat}
org.jboss.as.test.integration.jpa.mockprovider.classtransformer (1)
ClassFileTransformerTestCase.test_persistenceUnitInfoURLS
{noformat}
{noformat}
&#27;[0m&#27;[33m00:13:20,467 WARN [org.apache.activemq.artemis.core.client] (pool-8-thread-1) AMQ212007: connector.create or connectorFactory.createConnector should never throw an exception, implementation is badly behaved, but we will deal with it anyway.: java.security.AccessControlException: WFSM000001: Permission check failed (permission "("java.net.SocketPermission" "localhost" "resolve")" in code source "(vfs:/content/deploy.jar <no signer certificates>)" of "ModuleClassLoader for Module "deployment.deploy.jar" from Service Module Loader")
at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:294)
at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:191)
at java.lang.SecurityManager.checkConnect(SecurityManager.java:1048)
at org.wildfly.security.manager.WildFlySecurityManager.checkConnect(WildFlySecurityManager.java:389)
at java.net.InetAddress.getAllByName0(InetAddress.java:1268)
at java.net.InetAddress.getAllByName(InetAddress.java:1192)
at java.net.InetAddress.getAllByName(InetAddress.java:1126)
at java.net.InetAddress.getByName(InetAddress.java:1076)
at java.net.InetSocketAddress.<init>(InetSocketAddress.java:220)
at org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnector.createConnection(NettyConnector.java:711)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.openTransportConnection(ClientSessionFactoryImpl.java:1046)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.createTransportConnection(ClientSessionFactoryImpl.java:1086)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.establishNewConnection(ClientSessionFactoryImpl.java:1297)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnection(ClientSessionFactoryImpl.java:901)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnectionWithRetry(ClientSessionFactoryImpl.java:797)
at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.connect(ClientSessionFactoryImpl.java:240)
at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:782)
at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:835)
at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:282)
at org.jboss.as.test.integration.ee.remotelookup.LookupTestCase.lookupConnectionFactory(LookupTestCase.java:81)
at org.jboss.as.test.integration.ee.remotelookup.LookupTestCase.testServerLocalLookup(LookupTestCase.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.jboss.arquillian.junit.Arquillian$8$1.invoke(Arquillian.java:379)
at org.jboss.arquillian.container.test.impl.execution.LocalTestExecuter.execute(LocalTestExecuter.java:60)
at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:85)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:143)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
at org.jboss.arquillian.container.test.impl.execution.ContainerTestExecuter.execute(ContainerTestExecuter.java:38)
at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:85)
at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:130)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:92)
at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:73)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:143)
at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.test(EventTestRunnerAdaptor.java:136)
at org.jboss.arquillian.junit.Arquillian$8.evaluate(Arquillian.java:372)
at org.jboss.arquillian.junit.Arquillian$4.evaluate(Arquillian.java:246)
at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:431)
at org.jboss.arquillian.junit.Arquillian.access$200(Arquillian.java:55)
at org.jboss.arquillian.junit.Arquillian$5.evaluate(Arquillian.java:260)
at org.jboss.arquillian.junit.Arquillian$7$1.invoke(Arquillian.java:324)
at org.jboss.arquillian.container.test.impl.execution.BeforeLifecycleEventExecuter.on(BeforeLifecycleEventExecuter.java:35)
at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:85)
at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:130)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:92)
at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:73)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:96)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:92)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:143)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.fireCustomLifecycle(EventTestRunnerAdaptor.java:159)
at org.jboss.arquillian.junit.Arquillian$7.evaluate(Arquillian.java:317)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:205)
at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:431)
at org.jboss.arquillian.junit.Arquillian.access$200(Arquillian.java:55)
at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:219)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:167)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at org.jboss.arquillian.junit.container.JUnitTestRunner.execute(JUnitTestRunner.java:66)
at org.jboss.arquillian.protocol.jmx.JMXTestRunner.doRunTestMethod(JMXTestRunner.java:180)
at org.jboss.as.arquillian.service.ArquillianService$ExtendedJMXTestRunner.doRunTestMethod(ArquillianService.java:200)
at org.jboss.arquillian.protocol.jmx.JMXTestRunner.runTestMethodInternal(JMXTestRunner.java:162)
at org.jboss.arquillian.protocol.jmx.JMXTestRunner.runTestMethod(JMXTestRunner.java:141)
at org.jboss.as.arquillian.service.ArquillianService$ExtendedJMXTestRunner.runTestMethod(ArquillianService.java:176)
at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:71)
at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:275)
at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:112)
at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:46)
at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237)
at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.jboss.as.jmx.PluggableMBeanServerImpl$TcclMBeanServer.invoke(PluggableMBeanServerImpl.java:1475)
at org.jboss.as.jmx.PluggableMBeanServerImpl.invoke(PluggableMBeanServerImpl.java:724)
at org.jboss.as.jmx.BlockingNotificationMBeanServer.invoke(BlockingNotificationMBeanServer.java:168)
at org.jboss.as.jmx.AuthorizingMBeanServer.invoke(AuthorizingMBeanServer.java:258)
at org.jboss.remotingjmx.protocol.v2.ServerProxy$InvokeHandler.handle(ServerProxy.java:950)
at org.jboss.remotingjmx.protocol.v2.ServerCommon$MessageReciever$1$1.run(ServerCommon.java:153)
at org.jboss.as.jmx.ServerInterceptorFactory$Interceptor$1.run(ServerInterceptorFactory.java:71)
at org.jboss.as.jmx.ServerInterceptorFactory$Interceptor$1.run(ServerInterceptorFactory.java:66)
at org.wildfly.security.auth.server.SecurityIdentity.runAs(SecurityIdentity.java:313)
at org.wildfly.security.auth.server.SecurityIdentity.runAs(SecurityIdentity.java:270)
at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:254)
at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:225)
at org.jboss.as.jmx.ServerInterceptorFactory$Interceptor.handleEvent(ServerInterceptorFactory.java:66)
at org.jboss.remotingjmx.protocol.v2.ServerCommon$MessageReciever$1.run(ServerCommon.java:149)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
{noformat}
[1] https://ci.wildfly.org/viewLog.html?buildId=128138&buildTypeId=WF_MasterS...
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow updated WFLY-11360:
--------------------------------
Steps to Reproduce:
Set breakpoints in:
* org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList#registerInterposedSynchronization
* org.jboss.as.txn.service.internal.tsr.#registerInterposedSynchronization
change into wildfly/testsuite/integration/basic and do "mvn clean install -Dtest=org.jboss.as.test.integration.jpa.transaction.TransactionTestCase"
was:
Set breakpoints in:
* org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList#registerInterposedSynchronization
* org.jboss.as.txn.service.internal.tsr.#registerInterposedSynchronization
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Apparently we are doing a JNDI lookup of "java:jboss/TransactionSynchronizationRegistry" for Hibernate ORM integration, which means we are using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper for Hibernate ORM. Should we also be using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper class in other WildFly call sites, instead of org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry?
> Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
> {code}
> Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
> Lastly, the following call stack shows the Hibernate ORM sync being correctly registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:52:20,820 ERROR [stderr] (pool-7-thread-1) java.lang.Exception: Stack trace
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.registerInterposedSynchronization(JCAOrderedLastSynchronizationList.java:64)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper.registerInterposedSynchronization(TransactionSynchronizationRegistryWrapper.java:76)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.hibernate5.service.WildFlyCustomJtaPlatform$1.registerSynchronization(WildFlyCustomJtaPlatform.java:45)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.registerSynchronization(AbstractJtaPlatform.java:126)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.joinJtaTransaction(JtaTransactionCoordinatorImpl.java:170)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.pulse(JtaTransactionCoordinatorImpl.java:158)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.<init>(JtaTransactionCoordinatorImpl.java:94)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl.buildTransactionCoordinator(JtaTransactionCoordinatorBuilderImpl.java:29)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSharedSessionContract.<init>(AbstractSharedSessionContract.java:204)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSessionImpl.<init>(AbstractSessionImpl.java:29)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionImpl.<init>(SessionImpl.java:254)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl$SessionBuilderImpl.openSession(SessionFactoryImpl.java:1290)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.buildEntityManager(SessionFactoryImpl.java:628)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:614)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:154)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.createEntityManager(TransactionScopedEntityManager.java:187)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:157)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.AbstractEntityManager.joinTransaction(AbstractEntityManager.java:536)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:93)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow updated WFLY-11360:
--------------------------------
Description:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Apparently we are doing a JNDI lookup of "java:jboss/TransactionSynchronizationRegistry" for Hibernate ORM integration, which means we are using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper for Hibernate ORM. Should we also be using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper class in other WildFly call sites, instead of org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry?
Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
{code}
10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
{code}
Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
{code}
10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
{code}
Lastly, the following call stack shows the Hibernate ORM sync being correctly registered via JCAOrderedLastSynchronizationList:
{code}
10:52:20,820 ERROR [stderr] (pool-7-thread-1) java.lang.Exception: Stack trace
10:52:20,821 ERROR [stderr] (pool-7-thread-1) at java.lang.Thread.dumpStack(Thread.java:1336)
10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.registerInterposedSynchronization(JCAOrderedLastSynchronizationList.java:64)
10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper.registerInterposedSynchronization(TransactionSynchronizationRegistryWrapper.java:76)
10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.hibernate5.service.WildFlyCustomJtaPlatform$1.registerSynchronization(WildFlyCustomJtaPlatform.java:45)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.registerSynchronization(AbstractJtaPlatform.java:126)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.joinJtaTransaction(JtaTransactionCoordinatorImpl.java:170)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.pulse(JtaTransactionCoordinatorImpl.java:158)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.<init>(JtaTransactionCoordinatorImpl.java:94)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl.buildTransactionCoordinator(JtaTransactionCoordinatorBuilderImpl.java:29)
10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSharedSessionContract.<init>(AbstractSharedSessionContract.java:204)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSessionImpl.<init>(AbstractSessionImpl.java:29)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionImpl.<init>(SessionImpl.java:254)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl$SessionBuilderImpl.openSession(SessionFactoryImpl.java:1290)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.buildEntityManager(SessionFactoryImpl.java:628)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:614)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:154)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.createEntityManager(TransactionScopedEntityManager.java:187)
10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:157)
10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.AbstractEntityManager.joinTransaction(AbstractEntityManager.java:536)
10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:93)
{code}
was:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
{code}
10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
{code}
Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
{code}
10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
{code}
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Apparently we are doing a JNDI lookup of "java:jboss/TransactionSynchronizationRegistry" for Hibernate ORM integration, which means we are using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper for Hibernate ORM. Should we also be using the org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper class in other WildFly call sites, instead of org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry?
> Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
> {code}
> Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
> Lastly, the following call stack shows the Hibernate ORM sync being correctly registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:52:20,820 ERROR [stderr] (pool-7-thread-1) java.lang.Exception: Stack trace
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.registerInterposedSynchronization(JCAOrderedLastSynchronizationList.java:64)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.txn.service.internal.tsr.TransactionSynchronizationRegistryWrapper.registerInterposedSynchronization(TransactionSynchronizationRegistryWrapper.java:76)
> 10:52:20,821 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.hibernate5.service.WildFlyCustomJtaPlatform$1.registerSynchronization(WildFlyCustomJtaPlatform.java:45)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.engine.transaction.jta.platform.internal.AbstractJtaPlatform.registerSynchronization(AbstractJtaPlatform.java:126)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.joinJtaTransaction(JtaTransactionCoordinatorImpl.java:170)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.pulse(JtaTransactionCoordinatorImpl.java:158)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.<init>(JtaTransactionCoordinatorImpl.java:94)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl.buildTransactionCoordinator(JtaTransactionCoordinatorBuilderImpl.java:29)
> 10:52:20,822 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSharedSessionContract.<init>(AbstractSharedSessionContract.java:204)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.AbstractSessionImpl.<init>(AbstractSessionImpl.java:29)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionImpl.<init>(SessionImpl.java:254)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl$SessionBuilderImpl.openSession(SessionFactoryImpl.java:1290)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.buildEntityManager(SessionFactoryImpl.java:628)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:614)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.hibernate.internal.SessionFactoryImpl.createEntityManager(SessionFactoryImpl.java:154)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.createEntityManager(TransactionScopedEntityManager.java:187)
> 10:52:20,823 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:157)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.jpa.container.AbstractEntityManager.joinTransaction(AbstractEntityManager.java:536)
> 10:52:20,824 ERROR [stderr] (pool-7-thread-1) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:93)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow updated WFLY-11360:
--------------------------------
Description:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
{code}
10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
{code}
Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
{code}
10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
{code}
was:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
{code}
10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
{code}
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Call stack below shows the JPA container sync not being registered via JCAOrderedLastSynchronizationList:
> {code}
> 10:48:42,859 ERROR [stderr] (pool-7-thread-7) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:48:42,865 ERROR [stderr] (pool-7-thread-7) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.transaction.TransactionUtil.registerSynchronization(TransactionUtil.java:74)
> 10:48:42,866 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getOrCreateTransactionScopedEntityManager(TransactionScopedEntityManager.java:162)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.TransactionScopedEntityManager.getEntityManager(TransactionScopedEntityManager.java:87)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.jpa.container.AbstractEntityManager.persist(AbstractEntityManager.java:580)
> 10:48:42,867 ERROR [stderr] (pool-7-thread-7) at org.jboss.as.test.integration.jpa.transaction.UnsynchronizedSFSB.createAndPropagatedFindMixExceptionExcepted(UnsynchronizedSFSB.java:88)
> {code}
> Call stack below shows the JCA synchronization is also *NOT* registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow updated WFLY-11360:
--------------------------------
Description:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
{code}
10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
{code}
was:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Call stack below shows the JPA sync being registered:
> {code}
> <init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
> registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
> getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
> addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
> processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
> doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
> processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
> processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
> processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
> processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
> processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
> processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
> processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
> processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
> invoke:198, ViewService$View (org.jboss.as.ee.component)
> processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
> invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
> addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
> testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
> {code}
> Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> 10:45:06,979 ERROR [stderr] (pool-7-thread-8) java.lang.Exception: Stack trace
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at java.lang.Thread.dumpStack(Thread.java:1336)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.<init>(SynchronizationImple.java:57)
> 10:45:06,980 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.registerInterposedSynchronization(JBossJTALocalTransactionProvider.java:87)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.registerInterposedSynchronization(LocalTransaction.java:202)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry.registerInterposedSynchronization(ContextTransactionSynchronizationRegistry.java:77)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.transaction.TransactionSynchronizer.lock(TransactionSynchronizer.java:309)
> 10:45:06,981 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:311)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:564)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:970)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:792)
> 10:45:06,982 ERROR [stderr] (pool-7-thread-8) at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35)
> 10:45:06,983 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:106)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:136)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.connection(StatementPreparerImpl.java:47)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:87)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:78)
> 10:45:06,984 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3152)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3686)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:90)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)
> 10:45:06,985 ERROR [stderr] (pool-7-thread-8) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3283)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2479)
> 10:45:06,986 ERROR [stderr] (pool-7-thread-8) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:352)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
> 10:45:06,987 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
> 10:45:06,988 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
> 10:45:06,989 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.wildfly.transaction.client.LocalUserTransaction.commit(LocalUserTransaction.java:53)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.test.integration.jpa.transaction.SFSB1.createEmployee(SFSB1.java:96)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at java.lang.reflect.Method.invoke(Method.java:498)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> 10:45:06,990 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> 10:45:06,991 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.jpa.interceptor.SFSBInvocationInterceptor.processInvocation(SFSBInvocationInterceptor.java:57)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.StatefulBMTInterceptor.handleInvocation(StatefulBMTInterceptor.java:94)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> 10:45:06,992 ERROR [stderr] (pool-7-thread-8) at org.jboss.as.ejb3.component.stateful.StatefulSessionSynchronizationInterceptor.processInvocation(StatefulSessionSynchronizationInterceptor.java:137)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow updated WFLY-11360:
--------------------------------
Description:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
was:
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization also not registered via JCAOrderedLastSynchronizationList:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Call stack below shows the JPA sync being registered:
> {code}
> <init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
> registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
> getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
> addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
> processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
> doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
> processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
> processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
> processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
> processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
> processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
> processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
> processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
> processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
> invoke:198, ViewService$View (org.jboss.as.ee.component)
> processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
> invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
> addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
> testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
> {code}
> Call stack below shows the JCA synchronization is registered correctly via JCAOrderedLastSynchronizationList:
> {code}
> <init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
> getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
> beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
> createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
> processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
> doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
> processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
> processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
> processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
> processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
> processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
> processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
> processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
> processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
> processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
> invoke:198, ViewService$View (org.jboss.as.ee.component)
> processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
> invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
> createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
> testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
Scott Marlow created WFLY-11360:
-----------------------------------
Summary: JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
Key: WFLY-11360
URL: https://issues.jboss.org/browse/WFLY-11360
Project: WildFly
Issue Type: Bug
Components: Transactions
Affects Versions: 15.0.0.Beta1
Reporter: Scott Marlow
Assignee: Tom Jenkinson
Fix For: 15.0.0.CR1
JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
Call stack below shows the JPA sync being registered:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
Call stack below shows the JCA synchronization also not registered via JCAOrderedLastSynchronizationList:
{code}
<init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
invoke:198, ViewService$View (org.jboss.as.ee.component)
processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
{code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months
[JBoss JIRA] (WFLY-11360) JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
by Scott Marlow (Jira)
[ https://issues.jboss.org/browse/WFLY-11360?page=com.atlassian.jira.plugin... ]
Scott Marlow reassigned WFLY-11360:
-----------------------------------
Assignee: Scott Marlow (was: Tom Jenkinson)
> JCAOrderedLastSynchronizationList shouldn't be skipped for org.wildfly.transaction.client.ContextTransactionSynchronizationRegistry registered Synchronizations
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-11360
> URL: https://issues.jboss.org/browse/WFLY-11360
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 15.0.0.Beta1
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Priority: Major
> Fix For: 15.0.0.CR1
>
>
> JPA container synchronizations are not registered via JCAOrderedLastSynchronizationList, which means that JCA Synchronization#afterCompletion will not always run after JPA Synchronization#afterCompletion.
> Call stack below shows the JPA sync being registered:
> {code}
> <init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
> registerSynchronization:74, TransactionUtil (org.jboss.as.jpa.transaction)
> getOrCreateTransactionScopedEntityManager:162, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> getEntityManager:87, TransactionScopedEntityManager (org.jboss.as.jpa.container)
> persist:580, AbstractEntityManager (org.jboss.as.jpa.container)
> addEmployee:211, SLSB1 (org.jboss.as.test.integration.jpa.transaction)
> processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
> doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
> processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> handleInvocation:103, EjbBMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
> processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
> processInvocation:51, PooledInstanceInterceptor (org.jboss.as.ejb3.component.pool)
> processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
> processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
> processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
> processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
> processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
> invoke:198, ViewService$View (org.jboss.as.ee.component)
> processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
> invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
> addEmployee:-1, SLSB1$$$view6 (org.jboss.as.test.integration.jpa.transaction)
> testFailInDAOCalls:159, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
> {code}
> Call stack below shows the JCA synchronization also not registered via JCAOrderedLastSynchronizationList:
> {code}
> <init>:57, SynchronizationImple (com.arjuna.ats.internal.jta.resources.arjunacore)
> getConnection:64, WildFlyDataSource (org.jboss.as.connector.subsystems.datasources)
> beforeCompletion:113, JCAOrderedLastSynchronizationList (org.jboss.as.txn.service.internal.tsr)
> createEmployee:96, SFSB1 (org.jboss.as.test.integration.jpa.transaction)
> processInvocation:52, ManagedReferenceMethodInterceptor (org.jboss.as.ee.component)
> doMethodInterception:90, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:101, Jsr299BindingsInterceptor (org.jboss.as.weld.interceptors)
> processInvocation:63, UserInterceptorFactory$1 (org.jboss.as.ee.component.interceptors)
> processInvocation:43, ExecutionTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:47, SBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> processInvocation:57, SFSBInvocationInterceptor (org.jboss.as.jpa.interceptor)
> handleInvocation:94, StatefulBMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:58, BMTInterceptor (org.jboss.as.ejb3.tx)
> processInvocation:137, StatefulSessionSynchronizationInterceptor (org.jboss.as.ejb3.component.stateful)
> processInvocation:45, ConcurrentContextInterceptor (org.jboss.as.ee.concurrent)
> processInvocation:52, ComponentDispatcherInterceptor (org.jboss.as.ee.component.interceptors)
> processInvocation:59, StatefulComponentInstanceInterceptor (org.jboss.as.ejb3.component.stateful)
> processInvocation:54, AdditionalSetupInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:89, EjbRequestScopeActivationInterceptor (org.jboss.as.weld.ejb)
> processInvocation:41, CurrentInvocationContextInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:47, WaitTimeInterceptor (org.jboss.as.ejb3.component.invocationmetrics)
> processInvocation:100, SecurityContextInterceptor (org.jboss.as.ejb3.security)
> processInvocation:22, StartupAwaitInterceptor (org.jboss.as.ejb3.deployment.processors)
> processInvocation:64, ShutDownInterceptorFactory$1 (org.jboss.as.ejb3.component.interceptors)
> processInvocation:67, LoggingInterceptor (org.jboss.as.ejb3.component.interceptors)
> processInvocation:50, NamespaceContextInterceptor (org.jboss.as.ee.component)
> invoke:198, ViewService$View (org.jboss.as.ee.component)
> processInvocation:185, ViewDescription$1 (org.jboss.as.ee.component)
> invoke:81, ProxyInvocationHandler (org.jboss.as.ee.component)
> createEmployee:-1, SFSB1$$$view8 (org.jboss.as.test.integration.jpa.transaction)
> testQueryNonTXTransactionalDetachIsDeferred:264, TransactionTestCase (org.jboss.as.test.integration.jpa.transaction)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 8 months