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

Scott Marlow smarlow at redhat.com
Thu Jun 9 16:42:11 EDT 2011


As a short term way to resolve this in AS 7.0.  I'd like to have a fix 
based on CR4 (since CR5 won't be available soon enough).  We really need 
to get this pulled together sometime tomorrow morning (June 10th) for AS 
7.0.

I created a branch based on the CR4 tag for this. 
https://github.com/scottmarlow/infinispan/commits/5.0.0.CR4_AS7

I didn't change the versioning in the pom.xml yet (maybe bin/release.py 
script will help with that ;)

Maybe this could be tagged CR4_AS7PATCH or 5.0.0.CR4_AS7PATCH.  What do 
you think?

I assume the groupid should still be org.infinispan.  Let me know if it 
should change (org.scottwasabadboyandforkedinfinispan ;).

I already did some testing of the master branch and 
https://github.com/scottmarlow/infinispan/commits/5.0.0.CR4_AS7 for my 
interposed sync test case.  I had recreated the original failure and 
verified that its fixed on master and the above branch.

What do you think?

Thanks,
Scott

On 06/08/2011 01:40 PM, Mircea Markus wrote:
> I've added a suggested solution: http://bit.ly/lbj3w0
> Had a chat with Scott and he'll give it a go. I'll integrate/continue the work tomorrow morning.
> On 8 Jun 2011, at 18:18, Manik Surtani wrote:
>
>> So what is the final proposed solution here?
>>
>> On 8 Jun 2011, at 01:07, 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
>>
>> --
>> Manik Surtani
>> manik at jboss.org
>> twitter.com/maniksurtani
>>
>> Lead, Infinispan
>> http://www.infinispan.org
>>
>>
>>
>>
>> _______________________________________________
>> 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



More information about the infinispan-dev mailing list