<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 26 Jan 2011, at 12:30, Mircea Markus wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><br>On 26 Jan 2011, at 12:19, Manik Surtani wrote:<br><br><blockquote type="cite"><br></blockquote><blockquote type="cite">On 26 Jan 2011, at 12:17, Mircea Markus wrote:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite">On 25 Jan 2011, at 17:12, Manik Surtani wrote:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">How's this for a solution:<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">1) Test suite remains the same<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">I don't think performance is affected by using JBossTM for test runs, I'll need to check by running it<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">It should be quicker. There is no maintenance of a persistent tx log.<br></blockquote>Not necessarily: the log would only be written for tx that span more than an participant (have more than 1 XAReource enlisted). AFAIK there are very few tests like that in ISPN (I can only remember one). If only one participant in tx the TM would doesn't have to persist the log to disk. <br></div></blockquote><div><br></div><div>There are a few tests testing transactions that span different cache instances. Each one would be considered as its own RM.</div><br><blockquote type="cite"><div><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">2) Running tests locally remains the same (using the DummyTM)<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Is there any advantage in doing that besides being able to run tests more quickly? :-)<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Nope.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">3) Our Hudson environment runs the testsuite with the -Dinfinispan.tm=jbosstm parameter. <br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">This way, at least our CI builds will use a *real* TM. If we find failures on Hudson that we want to debug locally, we add -Dinfinispan.tm=jbosstm parameter. to any local run we want to trace.<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">Thoughts?<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">My concern is that we'll have to enhance DummyTM to be "more" compliant with the jta spec. As long as that's not going to happen I'm fine with using it for local test. IMO no point spending effort enhancing DummyTM.<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">I agree with you that there is no point expending effort to enhance the DummyTM - but IMO I don't think this is necessary right now.<br></blockquote>not now but it most likely will need to be extended. E.g. DummyTM DOES call XAResource.commit on read only resources, and that functionality will need to be corrected once a tests is added in which 1 out of 3 resources return a readonly response. IMO DTM's scope should only be fore batching. <br></div></blockquote><div><br></div><div>Not true.</div><div><br></div><div><a href="https://github.com/infinispan/infinispan/blob/master/core/src/main/java/org/infinispan/transaction/tm/DummyTransaction.java#L305">https://github.com/infinispan/infinispan/blob/master/core/src/main/java/org/infinispan/transaction/tm/DummyTransaction.java#L305</a></div><div><br></div><div>Cheers</div><div>Manik</div><div>--</div></div><div><div><div>Manik Surtani</div><div><a href="mailto:manik@jboss.org">manik@jboss.org</a></div><div><a href="http://twitter.com/maniksurtani">twitter.com/maniksurtani</a></div><div><br></div><div>Lead, Infinispan</div><div><a href="http://www.infinispan.org">http://www.infinispan.org</a></div><div><br></div></div><br class="Apple-interchange-newline">
</div>
<br></body></html>