<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 22, 2013 at 10:26 AM, Radim Vansa <span dir="ltr"><<a href="mailto:rvansa@redhat.com" target="_blank">rvansa@redhat.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><div class="im">
<div>On 11/21/2013 05:09 PM, Dan Berindei
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Thu, Nov 21, 2013 at 5:39 PM,
Pedro Ruivo <span dir="ltr"><<a href="mailto:pedro@infinispan.org" target="_blank">pedro@infinispan.org</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div><br>
<br>
On 11/21/2013 03:18 PM, Dan Berindei wrote:<br>
> Hmm, couldn't you just disable recovery in the TM
to get the same<br>
> performance with a XA resource as with a
synchronization?<br>
<br>
</div>
If you are suggesting to mess around with the TM, I don't
think that is<br>
a good idea. First, the TM is external to Infinispan and
second you can<br>
have others XaResources associated to the TM.<br>
</blockquote>
<div><br>
</div>
<div>I'm not suggesting that Infinispan should change the TM
settings, I'm just wondering if there's a difference
between using synchronization in Infinispan and disabling
recovery completely (or using an in-memory transaction
log) from the user's point of view.</div>
<div><br>
</div>
<div>Actually, that might be irrelevant if using
synchronization can lead to stale locks in Infinispan. If
the commit command fails and doesn't release the locks,
how will the user be able to find out that there are stale
locks and release them?</div>
</div>
</div>
</div>
</blockquote>
<br></div>
Infinispan detects the failed commit and sends a rollback command.
Only if this fails as well, the locks stay unreleased.<br>
The problem is just that application thinks it has succeeded while
the transaction may have been rolled back (in Infinispan way, the
JTA transaction was already committed).<span class="HOEnZb"><font color="#888888"><br>
<br></font></span></div></blockquote><div><br></div><div>Ok, maybe I was overreacting a bit :)</div><div><br></div><div>But like you said, the rollback command can fail as well. True, the rollback doesn't have to write anything to the cache stores, so it's less likely to fail, but we should still consider the possibility.</div>
<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000"><span class="HOEnZb"><font color="#888888">
Radim</font></span><div><div class="h5"><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div><br>
><br>
><br>
> On Thu, Nov 21, 2013 at 1:57 PM, Pedro Ruivo <<a href="mailto:pedro@infinispan.org" target="_blank">pedro@infinispan.org</a><br>
</div>
<div>> <mailto:<a href="mailto:pedro@infinispan.org" target="_blank">pedro@infinispan.org</a>>>
wrote:<br>
><br>
><br>
><br>
> On 11/21/2013 11:34 AM, Galder Zamarreņo wrote:<br>
> ><br>
> ><br>
> > It's way faster actually. The speed
difference from all the extra<br>
> work required by Transaction Manager to deal
with multiple XA<br>
> resources, make transactions recoverable..etc.
We've done tests in<br>
> the past (i.e. Hibernate 2LC) comparing both
and the difference was<br>
> quite big.<br>
> ><br>
><br>
> you are right. I forgot the recovery mechanism
:)<br>
> _______________________________________________<br>
> infinispan-dev mailing list<br>
</div>
> <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a>
<mailto:<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a>><br>
> <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
<div>
<div>><br>
><br>
><br>
><br>
> _______________________________________________<br>
> infinispan-dev mailing list<br>
> <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
> <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
><br>
_______________________________________________<br>
infinispan-dev mailing list<br>
<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
infinispan-dev mailing list
<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a></pre>
</blockquote>
<br>
<br>
</div></div><div class="im"><pre cols="72">--
Radim Vansa <a href="mailto:rvansa@redhat.com" target="_blank"><rvansa@redhat.com></a>
JBoss DataGrid QA
</pre>
</div></div>
<br>_______________________________________________<br>
infinispan-dev mailing list<br>
<a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br></blockquote></div><br></div></div>