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, 5.0
    • 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

        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).
        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

          People

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

            Dates

            • Created:
              Updated:
              Resolved:

              Development