[infinispan-dev] discussion about impact of using TransactionSynchronizationRegistry in AS7...

Galder Zamarreño galder at redhat.com
Wed Jun 8 06:57:26 EDT 2011


As a side note, I've just changed 2LC code to use synchronizations and it looked good. However, it was using an old dummy TM that hooked with Hibernate's connection provider.

It's clear that we need to move the 2LC testsuite to JBossTS to catch this stuff early. I'll add a JIRA for this.

In the mean time, I can quickly modify the dummy TM to make the same check as JBoss TS and see whether it fails in the 2LC testsuite.

On Jun 8, 2011, at 2:07 AM, Scott Marlow wrote:

> I just hit this case locally.  http://pastie.org/2035067
> 
> This is running with a hacked AS7, in the sense that IronJacamar 
> (JBJCA-594), Hibernate JPA and the EJB3.1 container are registering TSR 
> interposed synchronizations 
> (https://github.com/scottmarlow/jboss-as/commits/jpa_tsr).
> 
> This is for a 2lc unit test running in AS7 (non-clustered).
> 
> org.hibernate.engine.transaction.synchronization.internal.RegisteredSynchronization.beforeCompletion 
> is already running, meaning that we cannot expect 
> org.infinispan.transaction.TransactionTable.enlist() to succeed in its 
> transaction.registerSynchronization().
> 
> Scott
> 
> On 06/01/2011 03:49 PM, Scott Marlow wrote:
>> I posted a message on the as7-dev ml
>> (http://lists.jboss.org/pipermail/jboss-as7-dev/2011-May/002254.html),
>> about switching to use the TransactionSynchronizationRegistry.
>> 
>> Does Infinispan currently register Transaction synchronization objects?
>>   Does Infinispan currently register synchronizations via
>> TransactionSynchronizationRegistry (TSR)?
>> 
>> I'm trying to get a sense for, what would happen if container managed
>> (AS7) session beans were registered with the active JTA transaction via
>> the TSR.
>> 
>> If AS7 switches to use the TSR, I think that Infinispan might need to
>> ensure that it doesn't attempt to register with the TX too late.
>> 
>> See http://pastie.org/1836698 for an example of what would happen if a
>> TSR synchronization object is already present and someone tries to
>> register a TX synchronization after tx.commit has been started.
>> 
>> 
>> _______________________________________________
>> infinispan-dev mailing list
>> infinispan-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/infinispan-dev
> 
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev

--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache




More information about the infinispan-dev mailing list