On Dec 8, 2011, at 9:01 AM, Thomas Mortagne wrote:
Hi devs,
Now that master just moved to 3.4-SNAPSHOT I would like to merge my refactoring of the component manager. You can find the branch on https://github.com/xwiki/xwiki-commons/tree/feature-improvecm.
The rational is that it's then going to be indirectly tested during the whole 3.4 timeframe. Never too careful with the most critical code.
I already detailed this on another mail but the major difference with current implementation is that it's locking a lot less and since CM is pretty heavily used (and is going to be used more and more) it should make a noticeable difference. It also fix several bugs I found while doing this refactoring and covering it with tests.
Here are the related jira issues: * http://jira.xwiki.org/browse/XCOMMONS-63 * http://jira.xwiki.org/browse/XCOMMONS-65 * http://jira.xwiki.org/browse/XCOMMONS-64 * http://jira.xwiki.org/browse/XCOMMONS-66
Here is my +1
+1 How are we going to measure the performance improvements? I'd propose that we add a performance unit test so that we can compare the 2 implementations. I can think of at least 2 tools for this: * ContiPerf: http://databene.org/contiperf I had written a quick minimalist test here: http://jira.xwiki.org/browse/XWIKI-6164?focusedCommentId=59460&page=com.atla... * Tempus-fugit: http://code.google.com/p/tempus-fugit/wiki/Documentation?tm=6 ContiPerf seems the best to me. We wouldn't run this test as part of the main test suite but it could be either run manually or triggered by a maven profile. WDYT? Thanks -Vincent