[ https://issues.apache.org/jira/browse/LUCENE-1769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12737671#action_12737671 ]
Uwe Schindler commented on LUCENE-1769: --------------------------------------- This discussion was on java-dev, I copy it here for completeness: > : I didn't realize the nightly build runs the tests twice (with & w/o > : clover); I agree, running only with clover seems fine? > > i'm not caught up on this issue, but i happen to notice this comment in > email. > > the reason the tests are run twice is because in between the two runs we > package up the jars. clover instruments all the classes, so if we only > ran hte tests once (w/clover), and then packaged the jars the nightly > builds would include clover instrumented bytecode. > > if you look at the old Jira issues about clover this is discussed there. > > -Hoss This is correct but still inefficient. The current workflow is: - Checkout svn - Build the source package with ant - Build the maven artifacts (which compiles all classes) - Then ant nightly is called, which builds the binary package and runs tests -> this could be optimized to only build the binary package - ant clean - ant nightly with clover enabled -> This packages the binaries again, but does not copy them. This is also not the best. This step should simple do ant test with clover - build the clover report I only want to remove the call to the (I call it deprecated "nightly" target, which is a relict from the time before Hudson and replace by "package" in the first run and to "ant test" for the clover enabled version. The build would run two times faster. > Fix wrong clover analysis because of backwards-tests, upgrade clover to 2.4.3 > or better > --------------------------------------------------------------------------------------- > > Key: LUCENE-1769 > URL: https://issues.apache.org/jira/browse/LUCENE-1769 > Project: Lucene - Java > Issue Type: Bug > Components: Build > Affects Versions: 2.9 > Reporter: Uwe Schindler > Attachments: LUCENE-1769.patch, LUCENE-1769.patch, > nicks-LUCENE-1769.patch > > > This is a followup for > [http://www.lucidimagination.com/search/document/6248d6eafbe10ef4/build_failed_in_hudson_lucene_trunk_902] > The problem with clover running on hudson is, that it does not instrument all > tests ran. The autodetection of clover 1.x is not able to find out which > files are the correct tests and only instruments the backwards test. Because > of this, the current coverage report is only from the backwards tests running > against the current Lucene JAR. > You can see this, if you install clover and start the tests. During test-core > no clover data is added to the db, only when backwards-tests begin, new files > are created in the clover db folder. > Clover 2.x supports a new ant task, <testsources> that can be used to specify > the files, that are the tests. It works here locally with clover 2.4.3 and > produces a really nice coverage report, also linking with test files work, it > tells which tests failed and so on. > I will attach a patch, that changes common-build.xml to the new clover > version (other initialization resource) and tells clover where to find the > tests (using the test folder include/exclude properties). > One problem with the current patch: It does *not* instrument the backwards > branch, so you see only coverage of the core/contrib tests. Getting the > coverage also from the backwards tests is not easy possible because of two > things: > - the tag test dir is not easy to find out and add to <testsources> element > (there may be only one of them) > - the test names in BW branch are identical to the trunk tests. This > completely corrupts the linkage between tests and code in the coverage report. > In principle the best would be to generate a second coverage report for the > backwards branch with a separate clover DB. The attached patch does not > instrument the bw branch, it only does trunk tests. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org