Lucene - Core
  1. Lucene - Core
  2. LUCENE-4445

Fix clover to correcty instrument all packages, improve permgen

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.0
    • Fix Version/s: 4.1, Trunk
    • Component/s: general/test
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      This is a very stupid problem, but after a long time sitting in fornt of the build.xml's I found it:

      1. The biggest problem was: the target "-clover.init" was made in a way that it used the clover.loaded sysprop to avoid permgen issues. Unfortunatley it not only loaded clover, it also set it up in this task (setting the java source file folders). If the taskdef was then loaded for the first time, it had its source folders set up with the module it was called first. The later coming compilation of another module did not run clover.setup anymore, so no new source folders were configured. I splitted the IVY-Load+Taskdef from the clover setup.

      2. I also improved the code duplication for compile in test-framework. I made it inherit from common-build, but disable clover instrumentation for test-framework by overriding -clover.setup target in the test-frameworks (Lucene+Solr).

      3. I fixed some permgen issues, so -clover.load is only executed onec. I had to use a trick to pass the classpath to ivy's cachepath down to the subants, because we don't inherit refs. The trick was to make the clover.loaded property contain a stringified version of the clover classpath instead of a simple "true". By that it is automatically passed down using the propertyset.

      1. LUCENE-4445.patch
        6 kB
        Uwe Schindler

        Activity

        Uwe Schindler created issue -
        Uwe Schindler made changes -
        Field Original Value New Value
        Attachment LUCENE-4445.patch [ 12546976 ]
        Hide
        Uwe Schindler added a comment -

        Committed trunk revision: 1391382
        Committed 4.x revision: 1391383

        I did not commit to 4.0 branch. We can backport this once we setup jenkins runs before a 4.0.1 release (if we want clover).

        Show
        Uwe Schindler added a comment - Committed trunk revision: 1391382 Committed 4.x revision: 1391383 I did not commit to 4.0 branch. We can backport this once we setup jenkins runs before a 4.0.1 release (if we want clover).
        Uwe Schindler made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Steve Rowe made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Hide
        Commit Tag Bot added a comment -

        [branch_4x commit] Uwe Schindler
        http://svn.apache.org/viewvc?view=revision&revision=1391383

        Merged revision(s) 1391382 from lucene/dev/trunk:
        LUCENE-4445: Fix clover to correcty instrument all packages, improve permgen

        Show
        Commit Tag Bot added a comment - [branch_4x commit] Uwe Schindler http://svn.apache.org/viewvc?view=revision&revision=1391383 Merged revision(s) 1391382 from lucene/dev/trunk: LUCENE-4445 : Fix clover to correcty instrument all packages, improve permgen
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        17m 42s 1 Uwe Schindler 28/Sep/12 11:17
        Resolved Resolved Closed Closed
        117d 20h 16m 1 Steve Rowe 24/Jan/13 06:33

          People

          • Assignee:
            Uwe Schindler
            Reporter:
            Uwe Schindler
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development