Looks good. Thanks for going through this.

/Erik


On 2018-09-14 00:58, Magnus Ihse Bursie wrote:
The file compare_exceptions.sh.incl contains a lot of "known exceptions" to files that we have ignored various aspects of when comparing two builds using compare.sh.

Most of them should be removed. There are several reasons for this:

1) The script was developed when we compared two completely different build systems (old and new), and some leeway was needed in that comparison. Now we only make incremental changes to an existing system, and we need to sharpen the tool.

2) We now have continuous testing on build reproducability, where we build twice in a row and compare the two builds. Essentially, I believe only changes that are triggered under these circumstances should be allowed to be on this list. All other changes could not be just deemed as spurious anymore.

3) We have addressed multiple issues of non-reproducability in the build, but we have been bad at clearing out this file.

Finally, I believe the DIS_DIFF_FILTER does not belong in the exceptions file, since it's more about the core behavior of the compare script.

I have tested this patch by repeatedly running the comparison test. While some of the issues are indeed intermittent, I believe they have at least been absent far enough on my testing to warrant removal at this point. (The only failure I've noticed is due to JDK-8209880. While I could have added a temporary exclude for tzdb.dat, I hope that JDK-8209880 get fixed soon enough that it's not worth a temporary workaround.)

In the fullness of time, it would be interesting to hunt down the remaining unexplained arbitrary changes in the build. But it's not really high priority.

Bug: https://bugs.openjdk.java.net/browse/JDK-8210750
WebRev: http://cr.openjdk.java.net/~ihse/JDK-8210750-cleanup-compare-exceptions/webrev.01

/Magnus


Reply via email to