On 10/5/09 5:47 PM, John Pallister wrote: […]
When I build ABCL, I get the warning "Use of Java version 1.6.0-internal not recommended." Perhaps '<matches string="${java.version}" pattern="1\.6\.0-internal"/>' could be added to the appropriate spot in build.xml to suppress this warning.
Maybe we should invert the test so we only emit the warning if we match 'java.version' for values of '1.6.0_1' through '1.6.0_9'? The sense being that we only know that we have problems with the Sun JDK 6 releases from U1 through U9.
Some background might be in order. For reasons that were never clear, but attributed to problems with the huge number of classes that ABCL generates (mostly from the "one per CONS" requirement), performance seemed subjectively slow under JDK 6, and was backed objectively by benchmarking the time it took ABCL to a) run the ANSI test suite, and to b) compile its own Lisp classes. Some guesses were made as to the cause of the problem, but by the time we got serious about thinking about implementing the rather involved strategies that seemed like it might help, jdk-1.6.0_10 was released with dramatically improved performance.
John: how did you build your OpenJDK6? Or did you get binaries from somewhere? I just built the version in MacPorts to test ABCL with, seeing the same '1.6.0-internal' version string in 'java.version'. The MacPorts port metadata claims this is 'b16', which seems to be the last change in the [OpenJDK6 mercurial repository][1]. Does 'b16' correspond to 'u16' in the Sun JDK release?
[1]: http://hg.openjdk.java.net/jdk6/jdk6