From tchrist at perl.com Wed Aug 10 11:39:38 2011 From: tchrist at perl.com (Tom Christiansen) Date: Wed, 10 Aug 2011 12:39:38 -0600 Subject: Errors in Java casing Message-ID: <221.1313001578@chthon> I've discovered some errors in Java's case insensitive methods for its String class. Its equalsIgnoreCase() is the most obvious one that gets things wrong, but there are several others as well. There is inarguably at least one significant bug, and quite plausibly several others as well. I've looked at the JDK7 source, and these remain buggy. I enclose a testing program to illustrate these bugs. It runs the tests against both JDK and the equivalent ICU function. The JDK gets many of them wrong, while ICU gets them all correct. --tom ==TECHNICAL DETAILS FOLLOW== The source of these bug is the many, many ASCII assumptions regarding casing, assumptions that do not hold for Unicode. There are also holdover bugs due to ignorance about Unicode outside the BMP that come from Unicode 1's 16-bitness, which no longer applies. The easiest bug to illustrate is that "??????????????".equalsIgnoreCase("??????????????") erroneously returns false when Unicode demands that it return to true. The bug here is that regionMatches() thinks that a String comprises a sequence of 16-bit Unicode characters. It does not. Those are char units, not Unicode characters, which are 21-bit quanties normally rounded up to 32 bits, not down to 16. The example strings I just used are in Deseret, which is a case-changing script in the SMP not in the BMP. Therefore, the char-based monkey work is broken. You can see how broken this is right here, from regionMatches: while (len-- > 0) { char c1 = ta[to++]; char c2 = pa[po++]; if (c1 == c2) { continue; } if (ignoreCase) { // If characters don't match but case may be ignored, // try converting both characters to uppercase. // If the results match, then the comparison scan should // continue. char u1 = Character.toUpperCase(c1); char u2 = Character.toUpperCase(c2); if (u1 == u2) { continue; } // Unfortunately, conversion to uppercase does not work properly // for the Georgian alphabet, which has strange rules about case // conversion. So we need to make one last check before // exiting. if (Character.toLowerCase(u1) == Character.toLowerCase(u2)) { continue; } } That is the source of this bug, and several others I shall describe. It needs to be reworked so that it actually works with all Unicode strings. You cannot store Unicode characters in Java char variables, and you must not call the Character casing methods since they don't work for most of Unicode's range. Next, if you are comparing strings, you should not be using simple case maps, and you must not assume that strings don't change length when casemapped or folded, because they quite obviously do. You can't let equalsIgnoreCase() short-circuit to failure because the strings have different lengths. That is an ASCII mindset for characters. It is contrary to a Unicode mindset for strings. Plus you are supposed to be using (full) case*folds* not casemaps, which are quite different from one another. Here is an example: Original: wei? WEI? Simple casemaps for chars: lowercase wei? wei? upppercase WEI? WEI? Full casemaps for strings: lowercase wei? wei? uppercase WEISS WEI? Casefolds: fold simple wei? wei? fold full weiss weiss The final line is the most important, which shows that they are the same because they have the same casefold. Q.E.D. To compare whether two strings are the same without respect to case, you must first calculate their respective Unicode casefolds (not casemaps!) and then compare those. You must not compare either the original strings or casemaps generated from those, as both of those can give wrong answers. You must use casefolds. But there is nothing in String or Character that gives you the casefold. There needs to be. Character should provide the simple casefold and String should provide the full casefold. (I don't know what to do about locales and turkish casefolds.) Demo program enclosed. I compare results from Java's String.equalIgnoreCase() with results from ICU's CaseInsensitiveString.equals(). Make sure your classpath has the (current) ICU library in it, and make sure to compile with "javac -encoding UTF-8". Hope this helps. --tom -------------- next part -------------- import java.lang.System; import java.io.*; import com.ibm.icu.util.CaseInsensitiveString; public class weiss { private static BufferedReader stdin; private static PrintStream stdout, stderr; public static void eqtest(String s1, String s2) { CaseInsensitiveString si1 = new CaseInsensitiveString(s1); CaseInsensitiveString si2 = new CaseInsensitiveString(s2); stdout.printf("%s: Java %s equals %s\n", s1.equalsIgnoreCase(s2) ? "pass" : "FAIL", s1, s2); stdout.printf("%s: ICU %s equals %s\n\n", si1.equals(s2) ? "pass" : "FAIL", s1, s2); } public static void main(String argv[]) { try { stdin = new BufferedReader(new InputStreamReader(System.in, "UTF-8")); stdout = new PrintStream(System.out, true, "UTF-8"); stderr = new PrintStream(System.err, true, "UTF-8"); } catch (IOException hosed) { System.err.printf("%s: error setting std streams to UTF-8: %s.\n", hosed.getMessage()); System.exit(1); } eqtest("?", "?"); // "\N{LATIN SMALL LETTER LONG S WITH DOT ABOVE}", "\N{LATIN CAPITAL LETTER S WITH DOT ABOVE}" eqtest("?", "?"); // "\N{MICRO SIGN}", "\N{GREEK CAPITAL LETTER MU}" eqtest("?", "?"); // "\N{MICRO SIGN}", "\N{GREEK SMALL LETTER MU}" eqtest("????", "????"); // "\N{LATIN LETTER YR}\N{LATIN LETTER SMALL CAPITAL A}\N{LATIN LETTER YR}\N{LATIN LETTER SMALL CAPITAL E}", "\N{LATIN LETTER SMALL CAPITAL R}\N{LATIN LETTER SMALL CAPITAL A}\N{LATIN LETTER SMALL CAPITAL R}\N{LATIN LETTER SMALL CAPITAL E}" eqtest("e?cient", "EFFICIENT"); // "e\N{LATIN SMALL LIGATURE FFI}cient", "EFFICIENT" eqtest("?our and water", "FLOUR AND WATER"); // "?our and water", "FLOUR AND WATER" eqtest("I WORK AT ?", "i work at ?"); // "I WORK AT \N{CIRCLED LATIN CAPITAL LETTER K}", "i work at \N{CIRCLED LATIN SMALL LETTER K}" eqtest("HENRY ?", "henry ?"); // "HENRY \N{ROMAN NUMERAL EIGHT}", "henry \N{SMALL ROMAN NUMERAL EIGHT}" // Classic German ligature issues eqtest("tsch??", "TSCH?SS"); // "tsch\N{LATIN SMALL LETTER U WITH DIAERESIS}\N{LATIN SMALL LETTER SHARP S}", "TSCH\N{LATIN CAPITAL LETTER U WITH DIAERESIS}SS" // the capital version is from Unicode 5.1, which is very old now eqtest("wei?", "WEI?"); // "wei\N{LATIN SMALL LETTER SHARP S}", "WEI\N{LATIN CAPITAL LETTER SHARP S}" eqtest("wei?", "WEISS"); // "wei\N{LATIN SMALL LETTER SHARP S}", "WEISS" eqtest("weiss", "WEI?"); // "weiss", "WEI\N{LATIN CAPITAL LETTER SHARP S}" // English ligature issues eqtest("po?t", "post"); // "po\N{LATIN SMALL LETTER LONG S}t", "post" eqtest("po?", "post"); // "po\N{LATIN SMALL LIGATURE LONG S T}", "post" // Deseret is only non-BMP case changing scdript eqtest("??????????????", "??????????????"); // "\N{DESERET CAPITAL LETTER DEE}\N{DESERET CAPITAL LETTER SHORT E}\N{DESERET CAPITAL LETTER ES}\N{DESERET CAPITAL LETTER LONG I}\N{DESERET CAPITAL LETTER ER}\N{DESERET CAPITAL LETTER SHORT E}\N{DESERET CAPITAL LETTER TEE}", "\N{DESERET SMALL LETTER DEE}\N{DESERET SMALL LETTER SHORT E}\N{DESERET SMALL LETTER ES}\N{DESERET SMALL LETTER LONG I}\N{DESERET SMALL LETTER ER}\N{DESERET SMALL LETTER SHORT E}\N{DESERET SMALL LETTER TEE}" // Greek simple casefolding tests eqtest("???????", "???????"); // "\N{GREEK SMALL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER GAMMA}\N{GREEK SMALL LETTER MU}\N{GREEK SMALL LETTER ALPHA}\N{GREEK SMALL LETTER FINAL SIGMA}", "\N{GREEK SMALL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER GAMMA}\N{GREEK SMALL LETTER MU}\N{GREEK SMALL LETTER ALPHA}\N{GREEK SMALL LETTER SIGMA}" eqtest("???????", "???????"); // "\N{GREEK SMALL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER GAMMA}\N{GREEK SMALL LETTER MU}\N{GREEK SMALL LETTER ALPHA}\N{GREEK SMALL LETTER FINAL SIGMA}", "\N{GREEK CAPITAL LETTER SIGMA}\N{GREEK CAPITAL LETTER TAU}\N{GREEK CAPITAL LETTER IOTA}\N{GREEK CAPITAL LETTER GAMMA}\N{GREEK CAPITAL LETTER MU}\N{GREEK CAPITAL LETTER ALPHA}\N{GREEK CAPITAL LETTER SIGMA}" // Greek full casefolding tests eqtest("?", "??"); // "\N{GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI}", "\N{GREEK CAPITAL LETTER ALPHA WITH VARIA}\N{GREEK CAPITAL LETTER IOTA}" eqtest("? ??? ??????", "?? ??? ??????"); // "\N{GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI} \N{GREEK SMALL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER OMICRON} \N{GREEK SMALL LETTER DELTA}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER ALPHA WITH TONOS}\N{GREEK SMALL LETTER OMICRON}\N{GREEK SMALL LETTER LAMDA}\N{GREEK SMALL LETTER OMICRON}", "\N{GREEK CAPITAL LETTER ALPHA WITH VARIA}\N{COMBINING GREEK YPOGEGRAMMENI} \N{GREEK CAPITAL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER OMICRON} \N{GREEK CAPITAL LETTER DELTA}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER ALPHA WITH TONOS}\N{GREEK SMALL LETTER OMICRON}\N{GREEK SMALL LETTER LAMDA}\N{GREEK SMALL LETTER OMICRON}" eqtest("? ??? ??????", "?? ??? ??????"); // "\N{GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI} \N{GREEK SMALL LETTER SIGMA}\N{GREEK SMALL LETTER TAU}\N{GREEK SMALL LETTER OMICRON} \N{GREEK SMALL LETTER DELTA}\N{GREEK SMALL LETTER IOTA}\N{GREEK SMALL LETTER ALPHA WITH TONOS}\N{GREEK SMALL LETTER OMICRON}\N{GREEK SMALL LETTER LAMDA}\N{GREEK SMALL LETTER OMICRON}", "\N{GREEK CAPITAL LETTER ALPHA WITH VARIA}\N{GREEK CAPITAL LETTER IOTA} \N{GREEK CAPITAL LETTER SIGMA}\N{GREEK CAPITAL LETTER TAU}\N{GREEK CAPITAL LETTER OMICRON} \N{GREEK CAPITAL LETTER DELTA}\N{GREEK CAPITAL LETTER IOTA}\N{GREEK CAPITAL LETTER ALPHA WITH TONOS}\N{GREEK CAPITAL LETTER OMICRON}\N{GREEK CAPITAL LETTER LAMDA}\N{GREEK CAPITAL LETTER OMICRON}" // Unicode 6.0.0 case-changing code point eqtest("??", "??"); // "\N{CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER}\N{CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER}", "\N{CYRILLIC SMALL LETTER SHHA WITH DESCENDER}\N{CYRILLIC SMALL LETTER SHHA WITH DESCENDER}" } } From tchrist at perl.com Fri Aug 12 12:07:18 2011 From: tchrist at perl.com (Tom Christiansen) Date: Fri, 12 Aug 2011 13:07:18 -0600 Subject: Errors in Java casing In-Reply-To: <221.1313001578@chthon> References: <221.1313001578@chthon> Message-ID: <21843.1313176038@chthon> Just a quick followup. This bug with equalsIgnoreCase working only for BMP alone went undetected all the way up through Unicode 3.1. That's when the Deseret script was introduced, which is a case-changing script outside the BMP. That was more than 10 years ago now. Obviously no one is screaming about it, but we never know what will happen in the future, and there is no reason for Java to misbehave on applicable future code points that are someday added outside the BMP. Best to future-proof it. Apparently there was never any organized code inspection to check all core Java libraries to fix anything processing Strings in a char-wise fashion to do so in by code points unless it really and truly made no difference, which in this case it does. That surprises me. This would also have been caught by an extensive test suite that tried all code points for various things. Even processing strings by code point doesn't give the best results. I'd rather like to see a way to disregard lengths and instead compare the two strings' full casefolds instead. However, I recognize that that has performance impacts at the very least and perhaps compatibility ones as well, so arguably a new and different method might be a more appropriate solution if that route were deemed sufficiently desirable. The problem is that this is unreasonably hard to implement on one's own without a method that produces a string's casefold. Because of this, I believe Java needs a String method that returns the full casefold of that string, and perhaps for performance concerns also a Character method that takes a code point and returns its simple casefold only. I don't know how locales enter into that, either. There is room in casefolding rules for locale stuff like Turkic, since that gets a different (full) casefold in that locale. --tom From michael.fang at sun.com Tue Aug 16 16:05:14 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:05:14 +0000 Subject: hg: jdk8/l10n: 4 new changesets Message-ID: <20110816230514.DBA3B47C29@hg.openjdk.java.net> Changeset: 0b615980879e Author: jjg Date: 2011-06-30 16:51 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/rev/0b615980879e 7061195: Clean up makefiles for JDK 8 Reviewed-by: ohair, jjg Contributed-by: alexandre.boulgakov at oracle.com ! make/sanity-rules.gmk Changeset: 05e24d6ed56d Author: lana Date: 2011-07-14 18:56 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/rev/05e24d6ed56d Merge Changeset: fd8615098a54 Author: ohair Date: 2011-07-22 17:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/rev/fd8615098a54 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties Changeset: f42e3d9394b4 Author: ohair Date: 2011-07-22 21:31 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/rev/f42e3d9394b4 Merge From michael.fang at sun.com Tue Aug 16 16:05:34 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:05:34 +0000 Subject: hg: jdk8/l10n/corba: 7069993: Adjust make/jprt.properties file for jdk8 Message-ID: <20110816230536.3BFAE47C2A@hg.openjdk.java.net> Changeset: 949fb60ca830 Author: ohair Date: 2011-07-22 17:34 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/corba/rev/949fb60ca830 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties From michael.fang at sun.com Tue Aug 16 16:06:58 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:06:58 +0000 Subject: hg: jdk8/l10n/hotspot: 82 new changesets Message-ID: <20110816230931.9955B47C2C@hg.openjdk.java.net> Changeset: 2b27ef5c2173 Author: kvn Date: 2011-05-20 12:46 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/2b27ef5c2173 7046096: SEGV IN C2 WITH 6U25 Summary: Missing fail flag set in strings concatenation code. Reviewed-by: never ! src/share/vm/opto/stringopts.cpp Changeset: cfbca4d74a61 Author: jcoomes Date: 2011-05-20 22:27 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/cfbca4d74a61 Merge Changeset: 789d04408ca3 Author: kvn Date: 2011-05-21 11:44 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/789d04408ca3 7045693: java/util/EnumSet/EnumSetBash.java still failing intermittently Summary: New limit for unrolled loop should be set only for zero trip guard and loop iteration test. Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp Changeset: b55f5bd7ec66 Author: kvn Date: 2011-05-21 13:59 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/b55f5bd7ec66 7045506: assert(!can_reshape || !new_phi) failed: for igvn new phi should be hooked Summary: Replace the assert in PhiNode::Ideal with check to avoid transformation of new phi. Reviewed-by: never ! src/share/vm/opto/cfgnode.cpp Changeset: 7523488edce5 Author: kvn Date: 2011-05-24 12:54 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/7523488edce5 7047300: VM crashes with assert(_base == InstPtr) failed: Not an object pointer Summary: The code incorrectly used is_instptr() instead of is_oopptr() to get const_oop. Reviewed-by: never ! src/share/vm/opto/output.cpp Changeset: ccf072cdba91 Author: iveresov Date: 2011-05-24 15:30 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/ccf072cdba91 7046893: LP64 problem with double_quadword in c1_LIRAssembler_x86.cpp Summary: Fixed invalid casts in address computation Reviewed-by: kvn, never Contributed-by: thomas.salter at unisys.com ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Changeset: 28a9fe9534ea Author: kvn Date: 2011-05-24 20:24 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/28a9fe9534ea 7048030: is_scavengable changes causing compiler to embed more constants Summary: ciObject::can_be_constant() and should_be_constant() should use is_perm() instead of !is_scavengable() Reviewed-by: never, jrose ! src/share/vm/ci/ciObject.cpp ! src/share/vm/ci/ciObject.hpp Changeset: 7db2b9499c36 Author: never Date: 2011-05-25 16:04 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/7db2b9499c36 7046732: JSR 292 assert(result == cpce->f1()) failed: expected result for assembly code Reviewed-by: kvn, iveresov, jrose ! src/share/vm/interpreter/interpreterRuntime.cpp Changeset: c7c81f18c834 Author: kvn Date: 2011-05-25 21:17 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/c7c81f18c834 7048332: Cadd_cmpLTMask doesn't handle 64-bit tmp register properly Summary: Use ins_encode %{ %} form to encode cadd_cmpLTMask() instruction and remove unused code. Reviewed-by: never ! src/cpu/x86/vm/x86_64.ad + test/compiler/7048332/Test7048332.java Changeset: 28263a73ebfb Author: iveresov Date: 2011-05-26 13:15 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/28263a73ebfb 7047491: C1: registers saved incorrectly when calling checkcast_arraycopy stub Summary: Save and restore the argument registers around the call to checkcast_arraycopy Reviewed-by: never, roland ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Changeset: 5ac411b3b8fc Author: never Date: 2011-05-26 14:44 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/5ac411b3b8fc 7047961: JSR 292 MethodHandleWalk swap args doesn't handle T_LONG and T_DOUBLE properly Reviewed-by: kvn, jrose ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandleWalk.hpp ! src/share/vm/prims/methodHandles.cpp Changeset: c76c13577460 Author: never Date: 2011-05-26 16:39 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/c76c13577460 Merge Changeset: b2cb497dec28 Author: kvn Date: 2011-05-27 12:47 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/b2cb497dec28 7047069: Array can dynamically change size when assigned to an object field Summary: Fix initialization of a newly-allocated array with arraycopy Reviewed-by: never ! src/share/vm/opto/library_call.cpp + test/compiler/7047069/Test7047069.java Changeset: 33e2b8f1d466 Author: kvn Date: 2011-05-31 10:05 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/33e2b8f1d466 6956668: misbehavior of XOR operator (^) with int Summary: optimize cmp_ne(xor(X,1),0) to cmp_eq(X,0) only for boolean values X. Reviewed-by: never ! src/share/vm/opto/subnode.cpp + test/compiler/6956668/Test6956668.java Changeset: 60b8287df30e Author: jrose Date: 2011-06-01 23:25 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/60b8287df30e 7049415: Failure of resolution of sym.reference to the c.s.s. should be wrapped in BootstrapMethodError Summary: Delegate invokedynamic linkage errors to MethodHandleNatives.raiseException. Reviewed-by: never ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp Changeset: a93146d0e4be Author: jrose Date: 2011-06-01 23:25 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/a93146d0e4be 7049410: JSR 292 old method name MethodHandle.invokeGeneric should not be accepted by the JVM Summary: change the default setting of the flag AllowInvokeGeneric to false Reviewed-by: never ! src/share/vm/runtime/globals.hpp Changeset: 537a4053b0f9 Author: ysr Date: 2011-05-23 16:42 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/537a4053b0f9 7042740: CMS: assert(n> q) failed: Looping at: ... blockOffsetTable.cpp:557 Summary: Do a one-step look-ahead, when sweeping free or garbage blocks, to avoid overstepping sweep limit, which may become a non-block-boundary because of a heap expansion delta coalescing with a previously co-terminal free block. Reviewed-by: brutisso, tonyp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/memory/blockOffsetTable.cpp Changeset: f153114134c8 Author: jcoomes Date: 2011-06-07 13:17 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/f153114134c8 Merge Changeset: d3b9f2be46ab Author: coleenp Date: 2011-05-21 15:39 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/d3b9f2be46ab 7033141: assert(has_cp_cache(i)) failed: oob Summary: Unrewrite bytecodes for OOM error allocating the constant pool cache. Reviewed-by: dcubed, acorn, never ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/rewriter.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/methodHandleWalk.cpp Changeset: 9dd6c4ba364f Author: coleenp Date: 2011-06-02 14:17 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/9dd6c4ba364f 7049928: VM crashes with "assert(_adapter != NULL) failed: must have" at methodOop.cpp:63 Summary: Removed extra change from another bug fix that caused this regression Reviewed-by: phh, dcubed, kvn, kamg, never ! src/share/vm/oops/methodOop.cpp Changeset: 96c891ebe56a Author: coleenp Date: 2011-06-02 21:01 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/96c891ebe56a Merge ! src/share/vm/prims/methodHandleWalk.cpp Changeset: ae1d716e395c Author: dsamersoff Date: 2011-06-09 01:33 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/ae1d716e395c Merge Changeset: f918d6096e23 Author: never Date: 2011-06-02 13:36 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/f918d6096e23 7050554: JSR 292 - need optimization for selectAlternative Reviewed-by: kvn, jrose ! src/share/vm/ci/ciCallProfile.hpp ! src/share/vm/ci/ciMethodHandle.cpp ! src/share/vm/ci/ciMethodHandle.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp ! src/share/vm/opto/doCall.cpp Changeset: cba7b5c2d53f Author: never Date: 2011-06-03 22:31 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/cba7b5c2d53f 7045514: SPARC assembly code for JSR 292 ricochet frames Reviewed-by: kvn, jrose ! src/cpu/sparc/vm/assembler_sparc.cpp ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/assembler_sparc.inline.hpp ! src/cpu/sparc/vm/frame_sparc.cpp ! src/cpu/sparc/vm/methodHandles_sparc.cpp + src/cpu/sparc/vm/methodHandles_sparc.hpp ! src/cpu/sparc/vm/registerMap_sparc.hpp ! src/cpu/sparc/vm/runtime_sparc.cpp ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/sparc/vm/stubRoutines_sparc.hpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/methodHandles_x86.hpp ! src/cpu/x86/vm/runtime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/cpu/x86/vm/stubRoutines_x86_32.hpp ! src/cpu/x86/vm/stubRoutines_x86_64.hpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandleWalk.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: 642c68c75db9 Author: kvn Date: 2011-06-04 10:36 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/642c68c75db9 7050280: assert(u->as_Unlock()->is_eliminated()) failed: sanity Summary: Mark all associated (same box and obj) lock and unlock nodes for elimination if some of them marked already. Reviewed-by: iveresov, never ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macro.hpp Changeset: 5cf771a79037 Author: jrose Date: 2011-06-08 17:04 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/5cf771a79037 7047697: MethodHandle.invokeExact call for wrong method causes VM failure if run with -Xcomp Reviewed-by: never, twisti ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/frame_x86.inline.hpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/share/vm/code/pcDesc.cpp Changeset: c8f2186acf6d Author: twisti Date: 2011-06-14 12:25 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/c8f2186acf6d 7053520: JSR292: crash in invokedynamic with C1 using tiered and compressed oops Reviewed-by: iveresov, never ! src/share/vm/c1/c1_LIRGenerator.cpp Changeset: f8c9417e3571 Author: never Date: 2011-06-14 14:41 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/f8c9417e3571 7052219: JSR 292: Crash in ~BufferBlob::MethodHandles adapters Reviewed-by: twisti, kvn, jrose ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/stubCodeGenerator.cpp ! src/share/vm/runtime/stubCodeGenerator.hpp Changeset: e2ce15aa3daf Author: never Date: 2011-06-14 15:20 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/e2ce15aa3daf Merge Changeset: cfcf2ba8f3eb Author: never Date: 2011-06-15 10:20 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/cfcf2ba8f3eb Merge ! src/share/vm/prims/methodHandleWalk.cpp Changeset: e2af886d540b Author: trims Date: 2011-07-01 13:07 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/e2af886d540b 7061691: Fork HS21 to HS22 - renumber Minor and build numbers of JVM Summary: Update the Minor and Build numbers for HS22 fork Reviewed-by: jcoomes ! make/hotspot_version Changeset: 1e3493ac2d11 Author: ysr Date: 2011-05-27 10:23 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/1e3493ac2d11 7048342: CMS: eob == _limit || fc->isFree() failed: Only a free chunk should allow us to cross over the limit Summary: The freeness bit was being cleared in debug code when it shouldn't have been. Also removed unused FreeChunk methods linkAfterNonNull and clearPrev. Reviewed-by: brutisso ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeChunk.hpp Changeset: 5c0a3c1858b1 Author: ysr Date: 2011-06-02 10:23 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/5c0a3c1858b1 7048782: CMS: assert(last_chunk_index_to_check<= last_chunk_index) failed: parCardTableModRefBS.cpp:359 Summary: The LNC array is sized before the start of a scavenge, while the heap may expand during a scavenge. With CMS, the last block of an arbitrary suffice of the LNC array may expand due to coalition with the expansion delta. We now take care not to attempt access past the end of the LNC array. LNC array code will be cleaned up and suitably encapsulated as part of the forthcoming performance RFE 7043675. Reviewed-by: brutisso ! src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp Changeset: e66f38dd58a9 Author: ysr Date: 2011-06-08 08:39 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/e66f38dd58a9 Merge Changeset: 053d84a76d3d Author: tonyp Date: 2011-06-08 15:31 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/053d84a76d3d 7032531: G1: enhance GC logging to include more accurate eden / survivor size transitions Summary: This changeset extends the logging information generated by +PrintGCDetails to also print out separate size transitions for the eden, survivors, and old regions. Reviewed-by: ysr, brutisso ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp Changeset: ae5b2f1dcf12 Author: tonyp Date: 2011-06-08 21:48 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/ae5b2f1dcf12 7045662: G1: OopsInHeapRegionClosure::set_region() should not be virtual Summary: make the method non-virtual, remove five unused closures, and fix a couple of copyright typos. Reviewed-by: stefank, johnc, poonam ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1OopClosures.hpp ! src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/g1/g1_specialized_oop_closures.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSets.hpp Changeset: c3f1170908be Author: tonyp Date: 2011-06-10 13:16 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/c3f1170908be 7045330: G1: Simplify/fix the HeapRegionSeq class 7042285: G1: native memory leak during humongous object allocation 6804436: G1: heap region indices should be size_t Summary: A series of fixes and improvements to the HeapRegionSeq class: a) replace the _regions growable array with a standard C array, b) avoid de-allocating / re-allocating HeapRegion instances when the heap shrinks / grows (fix for 7042285), c) introduce fast method to map address to HeapRegion via a "biased" array pointer, d) embed the _hrs object in G1CollectedHeap, instead of pointing to it via an indirection, e) assume that all the regions added to the HeapRegionSeq instance are contiguous, f) replace int's with size_t's for indexes (and expand that to HeapRegion as part of 6804436), g) remove unnecessary / unused methods, h) rename a couple of fields (_alloc_search_start and _seq_bottom), i) fix iterate_from() not to always start from index 0 irrespective of the region passed to it, j) add a verification method to check the HeapRegionSeq assumptions, k) always call the wrappers for _hrs.iterate(), _hrs_length(), and _hrs.at() from G1CollectedHeap, not those methods di rectly, and l) unify the code that expands the sequence (by either re-using or creating a new HeapRegion) and make it robust wrt to a HeapRegion allocation failing. Reviewed-by: stefank, johnc, brutisso ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.hpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.inline.hpp ! src/share/vm/gc_implementation/g1/sparsePRT.cpp Changeset: 2a241e764894 Author: minqi Date: 2011-06-10 15:08 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/2a241e764894 6941923: RFE: Handling large log files produced by long running Java Applications Summary: supply optinal flags to realize gc log rotation Reviewed-by: ysr, jwilhelm ! src/share/vm/gc_implementation/shared/concurrentGCThread.cpp ! src/share/vm/gc_implementation/shared/concurrentGCThread.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/atomic.cpp ! src/share/vm/runtime/atomic.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/ostream.hpp + test/gc/6941923/test6941923.sh Changeset: 42df21744b50 Author: minqi Date: 2011-06-10 15:44 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/42df21744b50 Merge Changeset: ef2d1b8f2dd4 Author: ysr Date: 2011-06-13 09:58 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/ef2d1b8f2dd4 7051430: CMS: ongoing CMS cycle should terminate abruptly to allow prompt JVM termination at exit Summary: It turns out that there is no need to explicitly stop CMS since the JVM is taken down at a terminal safepoint during which CMS threads are (terminally) inactive. This will need to be revised if and when we evolve in the future to a point where we allow JVM reincarnation in the same process, but those changes will be much more sweeping than just terminating CMS threads. The unused ::stop() methods will be removed in a separate CR. Also include in this CR is the fix for a small typo in the spelling of UseGCLogFileRotation in a message in arguments.cpp, brought to our attention by Rainer Jung and reviewed by minqi. Reviewed-by: johnc, jwilhelm ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/thread.cpp Changeset: 74cd10898bea Author: brutisso Date: 2011-06-13 13:48 +0200 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/74cd10898bea 6918185: Remove unused code for lost card-marking optimization in BacktraceBuilder Summary: Removed dead code Reviewed-by: ysr, coleenp, dholmes ! src/share/vm/classfile/javaClasses.cpp Changeset: 842b840e67db Author: tonyp Date: 2011-06-14 10:33 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/842b840e67db 7046558: G1: concurrent marking optimizations Summary: Some optimizations to improve the concurrent marking phase: specialize the main oop closure, make sure a few methods in the fast path are properly inlined, a few more bits and pieces, and some cosmetic fixes. Reviewed-by: stefank, johnc ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp + src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp ! src/share/vm/gc_implementation/g1/g1OopClosures.hpp ! src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp ! src/share/vm/gc_implementation/g1/g1_specialized_oop_closures.hpp ! src/share/vm/utilities/bitMap.hpp Changeset: 6747fd0512e0 Author: johnc Date: 2011-06-14 11:01 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/6747fd0512e0 7004681: G1: Extend marking verification to Full GCs Summary: Perform a heap verification after the first phase of G1's full GC using objects' mark words to determine liveness. The third parameter of the heap verification routines, which was used in G1 to determine which marking bitmap to use in liveness calculations, has been changed from a boolean to an enum with values defined for using the mark word, and the 'prev' and 'next' bitmaps. Reviewed-by: tonyp, ysr ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/universe.hpp Changeset: 5130fa1b24f1 Author: johnc Date: 2011-06-15 10:18 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/5130fa1b24f1 7045751: G1: +ExplicitGCInvokesConcurrent causes excessive single region evacuation pauses Summary: When ExplicitGCInvokesConcurrent is enabled, do not perform an evacuation pause if a marking cycle is already in progress and block the requesting thread until the marking cycle completes. Reviewed-by: tonyp, ysr ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp Changeset: c9ca3f51cf41 Author: tonyp Date: 2011-06-16 15:51 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/c9ca3f51cf41 6994322: Remove the is_tlab and is_noref / is_large_noref parameters from the CollectedHeap Summary: Remove two unused parameters from the mem_allocate() method and update its uses accordingly. Reviewed-by: stefank, johnc ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.hpp ! src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.hpp ! src/share/vm/gc_implementation/parallelScavenge/vmPSOperations.cpp ! src/share/vm/gc_implementation/parallelScavenge/vmPSOperations.hpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/gc_interface/collectedHeap.inline.hpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/oops/typeArrayKlass.cpp Changeset: f75137faa7fe Author: ysr Date: 2011-06-20 09:42 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/f75137faa7fe 6916968: CMS: freeList.cpp:304 assert(_allocation_stats.prevSweep() + ..., "Conservation Principle") Summary: Fix assert and adjust demand volume computation by adding missing factor. Reviewed-by: jmasa, tonyp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeList.cpp ! src/share/vm/gc_implementation/shared/allocationStats.hpp Changeset: 23d434c6290d Author: tonyp Date: 2011-06-20 22:03 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/23d434c6290d 7055073: G1: code cleanup in the concurrentMark.* files Summary: Only cosmetic changes to make the concurrentMark.* more consistent, code-style-wise, with the rest of the codebase. Reviewed-by: johnc, ysr ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp Changeset: e8b0b0392037 Author: tonyp Date: 2011-06-21 15:23 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/e8b0b0392037 7046182: G1: remove unnecessary iterations over the collection set Summary: Remove two unnecessary iterations over the collection set which are supposed to prepare the RSet's of the CSet regions for parallel iterations (we'll make sure this is done incrementally). I'll piggyback on this CR the removal of the G1_REM_SET_LOGGING code. Reviewed-by: brutisso, johnc ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/g1/g1RemSet.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSets.cpp ! src/share/vm/gc_implementation/g1/heapRegionSets.hpp Changeset: 5f6f2615433a Author: tonyp Date: 2011-06-24 12:38 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/5f6f2615433a 7049999: G1: Make the G1PrintHeapRegions output consistent and complete Summary: Extend and make more consistent the output from the G1PrintHeapRegions flag. Reviewed-by: johnc, jmasa ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp + src/share/vm/gc_implementation/g1/g1HRPrinter.cpp + src/share/vm/gc_implementation/g1/g1HRPrinter.hpp Changeset: 04760e41b01e Author: brutisso Date: 2011-06-28 14:23 +0200 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/04760e41b01e 7016112: CMS: crash during promotion testing Summary: Also reviewed by mikael.gerdin at oracle.com; stdlib:qsort() does byte-by-byte swapping on Windows. This leads to pointer shearing. Fix is to implement a quicksort that does full pointer updates. Reviewed-by: never, coleenp, ysr ! src/share/vm/oops/methodOop.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/globals.hpp + src/share/vm/utilities/quickSort.cpp + src/share/vm/utilities/quickSort.hpp Changeset: 4bf3cbef0b3e Author: jcoomes Date: 2011-07-06 08:43 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/4bf3cbef0b3e Merge ! src/share/vm/oops/methodOop.cpp ! src/share/vm/runtime/globals.hpp Changeset: d83ac25d0304 Author: never Date: 2011-06-16 13:46 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/d83ac25d0304 7055355: JSR 292: crash while throwing WrongMethodTypeException Reviewed-by: jrose, twisti, bdelsart ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/sparc/vm/stubGenerator_sparc.cpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/stubGenerator_x86_32.cpp ! src/cpu/x86/vm/stubGenerator_x86_64.cpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/interpreterRuntime.hpp ! src/share/vm/interpreter/templateInterpreter.cpp ! src/share/vm/interpreter/templateInterpreterGenerator.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/stubRoutines.hpp Changeset: aacaff365100 Author: kvn Date: 2011-06-20 16:45 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/aacaff365100 7052494: Eclipse test fails on JDK 7 b142 Summary: Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit. Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp + test/compiler/7052494/Test7052494.java Changeset: de6a837d75cf Author: never Date: 2011-06-21 09:04 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/de6a837d75cf 7056380: VM crashes with SIGSEGV in compiled code Summary: code was using andq reg, imm instead of addq addr, imm Reviewed-by: kvn, jrose, twisti ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/x86_64.ad Changeset: aabf25fa3f05 Author: never Date: 2011-06-22 14:45 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/aabf25fa3f05 7057587: JSR 292 - crash with jruby in test/test_respond_to.rb Summary: don't skip receiver when GC'ing compiled invokedynamic callsites Reviewed-by: twisti, kvn, jrose ! src/share/vm/code/nmethod.cpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/parse.hpp Changeset: ddd894528dbc Author: jrose Date: 2011-06-23 17:14 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/ddd894528dbc 7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path Reviewed-by: never ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciEnv.hpp ! src/share/vm/ci/ciField.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethodHandle.cpp ! src/share/vm/ci/ciObjArrayKlass.cpp ! src/share/vm/ci/ciSignature.cpp ! src/share/vm/ci/ciSignature.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/oops/constantPoolOop.cpp ! src/share/vm/oops/constantPoolOop.hpp ! src/share/vm/oops/cpCacheOop.cpp ! src/share/vm/oops/cpCacheOop.hpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/oops/methodOop.hpp ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandleWalk.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp Changeset: 498c6cf70f7e Author: kvn Date: 2011-06-28 14:30 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/498c6cf70f7e 7058036: FieldsAllocationStyle=2 does not work in 32-bit VM Summary: parseClassFile() incorrectly uses nonstatic_oop_map_size() method instead of nonstatic_oop_map_count(). Reviewed-by: never Contributed-by: Krystal Mok ! src/share/vm/classfile/classFileParser.cpp Changeset: 6ae7a1561b53 Author: kvn Date: 2011-06-28 15:04 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/6ae7a1561b53 6990015: Incorrect Icache line size is used for 64 bit x86 Summary: correct Icache::line_size for x64 and add verification code into vm_version_x86. Reviewed-by: never, phh ! src/cpu/x86/vm/icache_x86.hpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/x86/vm/vm_version_x86.hpp Changeset: e3cbc9ddd434 Author: kvn Date: 2011-06-28 15:24 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/e3cbc9ddd434 7044738: Loop unroll optimization causes incorrect result Summary: take into account memory dependencies when clonning nodes in clone_up_backedge_goo(). Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp + test/compiler/7044738/Test7044738.java + test/compiler/7046096/Test7046096.java Changeset: 7889bbcc7f88 Author: kvn Date: 2011-06-28 15:50 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/7889bbcc7f88 7047954: VM crashes with assert(is_Mem()) failed Summary: cast constant array ptrs to bottom Reviewed-by: never ! src/share/vm/opto/compile.cpp Changeset: 6f6e91603a45 Author: iveresov Date: 2011-07-01 10:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/6f6e91603a45 7058689: Tiered: Reprofiling doesn't happen in presence of level 4 OSR methods Summary: Take into account current state of profiling before believing that existing higher level versions are valid Reviewed-by: kvn, never ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp Changeset: 2c359f27615c Author: iveresov Date: 2011-07-01 10:37 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/2c359f27615c 7057120: Tiered: Allow C1 to inline methods with loops Summary: Recompile the enclosing methods without inlining of the method that has OSRed to level 4 or recompile the enclosing method at level 4. Reviewed-by: kvn, never ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! src/share/vm/runtime/advancedThresholdPolicy.hpp ! src/share/vm/runtime/compilationPolicy.cpp ! src/share/vm/runtime/compilationPolicy.hpp ! src/share/vm/runtime/simpleThresholdPolicy.cpp ! src/share/vm/runtime/simpleThresholdPolicy.hpp Changeset: 15559220ce79 Author: never Date: 2011-07-05 16:07 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/15559220ce79 6478991: C1 NullCheckEliminator yields incorrect exceptions Reviewed-by: twisti, iveresov ! src/share/vm/c1/c1_Optimizer.cpp + test/compiler/6478991/NullCheckTest.java Changeset: fe240d87c6ec Author: never Date: 2011-07-06 09:27 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/fe240d87c6ec 7061101: adlc should complain about mixing block and expression forms of ins_encode Reviewed-by: kvn ! src/share/vm/adlc/adlparse.cpp Changeset: 3e23978ea0c3 Author: never Date: 2011-07-06 18:15 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/3e23978ea0c3 7062856: Disassembler needs to be smarter about finding hsdis after 1.7 launcher changes Summary: do explicit lookup emulating old LD_LIBRARY_PATH search Reviewed-by: kvn, jrose ! src/share/tools/hsdis/README ! src/share/vm/compiler/disassembler.cpp Changeset: b16582d6c7db Author: kvn Date: 2011-07-07 10:51 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/b16582d6c7db Merge ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/oops/methodOop.cpp Changeset: 7d9e451f5416 Author: jcoomes Date: 2011-07-06 12:03 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/7d9e451f5416 7061187: need some includes for arm/ppc Reviewed-by: dholmes, never, jwilhelm, kvn ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/runtime/atomic.cpp Changeset: eb94b7226b7a Author: jcoomes Date: 2011-07-06 12:17 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/eb94b7226b7a 7061192: option handling adjustments for oracle and embedded builds Reviewed-by: dholmes, never, jwilhelm, kvn ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 65dba8692db7 Author: jcoomes Date: 2011-07-06 12:22 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/65dba8692db7 7061197: ThreadLocalStorage sp map table should be optional Reviewed-by: dholmes, never, jwilhelm, kvn ! src/os_cpu/linux_x86/vm/assembler_linux_x86.cpp ! src/os_cpu/linux_x86/vm/threadLS_linux_x86.cpp ! src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp Changeset: 48048b59a551 Author: jcoomes Date: 2011-07-06 12:28 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/48048b59a551 7061204: clean the chunk table synchronously in embedded builds Reviewed-by: dholmes, never, jwilhelm, kvn ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/thread.cpp Changeset: bf6481e5f96d Author: jcoomes Date: 2011-07-06 13:02 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/bf6481e5f96d 7061225: os::print_cpu_info() should support os-specific data Reviewed-by: dholmes, never, jwilhelm, kvn ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp Changeset: 8a4fc2990229 Author: jcoomes Date: 2011-07-07 15:44 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/8a4fc2990229 7053189: remove some unnecessary platform-dependent includes Reviewed-by: dholmes, never, jwilhelm, kvn ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/arguments.cpp Changeset: b0b8491925fe Author: jcoomes Date: 2011-07-11 14:15 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/b0b8491925fe 7061212: use o/s low memory notification in embedded builds Reviewed-by: dholmes, never, jwilhelm, kvn ! src/os/linux/vm/os_linux.cpp Changeset: 0defeba52583 Author: jcoomes Date: 2011-07-12 16:32 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/0defeba52583 Merge Changeset: faa472957b38 Author: kvn Date: 2011-07-08 09:38 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/faa472957b38 7059034: Use movxtod/movdtox on T4 Summary: Use new VIS3 mov instructions on T4 for move data between general and float registers. Reviewed-by: never, twisti ! src/cpu/sparc/vm/assembler_sparc.hpp ! src/cpu/sparc/vm/sparc.ad ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/share/vm/runtime/globals.hpp Changeset: 263247c478c5 Author: iveresov Date: 2011-07-08 15:33 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/263247c478c5 7058510: multinewarray with 6 dimensions uncommon traps in server compiler Summary: Pass arguments to runtime via java array for arrays with > 5 dimensions Reviewed-by: never, kvn, jrose, pbk ! src/share/vm/opto/parse3.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/runtime.hpp Changeset: 1f4f4ae84625 Author: kvn Date: 2011-07-13 10:48 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/1f4f4ae84625 Merge ! src/share/vm/runtime/globals.hpp Changeset: 3fbb609d9e96 Author: kvn Date: 2011-07-14 15:39 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/3fbb609d9e96 7067288: compiler regression test Test7052494 timeouts with client VM Summary: Test is modified to reduce number of iterations in test5() and test6(). Reviewed-by: never, iveresov ! test/compiler/7052494/Test7052494.java Changeset: 341a57af9b0a Author: never Date: 2011-07-15 15:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/341a57af9b0a 6990212: JSR 292 JVMTI MethodEnter hook is not called for JSR 292 bootstrap and target methods Summary: check for single stepping when dispatching invokes from method handles Reviewed-by: coleenp, twisti, kvn, dsamersoff ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/sparc/vm/methodHandles_sparc.hpp ! src/cpu/x86/vm/interp_masm_x86_32.cpp ! src/cpu/x86/vm/interp_masm_x86_64.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/methodHandles_x86.hpp + test/compiler/6990212/Test6990212.java Changeset: 968305b802ee Author: trims Date: 2011-07-23 01:56 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/968305b802ee Merge Changeset: 8e5d4aa73a8c Author: trims Date: 2011-07-22 23:47 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/8e5d4aa73a8c 7069176: Update the JDK version numbers in Hotspot for JDK 8 Summary: Change JDK_MINOR_VER and JDK_PREVIOUS_VERSION to reflect JDK8 values Reviewed-by: jcoomes ! make/hotspot_version Changeset: 0cc8a70952c3 Author: trims Date: 2011-07-22 23:42 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/hotspot/rev/0cc8a70952c3 7070061: Adjust Hotspot make/jprt.properties for new JDK8 settings Summary: Fix so the JPRT can build with -release jdk8 now Reviewed-by: ohair ! make/jprt.properties From michael.fang at sun.com Tue Aug 16 16:11:29 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:11:29 +0000 Subject: hg: jdk8/l10n/jaxp: 7069993: Adjust make/jprt.properties file for jdk8 Message-ID: <20110816231129.7ED0A47C2E@hg.openjdk.java.net> Changeset: 4f0fcb812767 Author: ohair Date: 2011-07-22 17:34 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jaxp/rev/4f0fcb812767 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties From michael.fang at sun.com Tue Aug 16 16:11:58 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:11:58 +0000 Subject: hg: jdk8/l10n/jaxws: 7069993: Adjust make/jprt.properties file for jdk8 Message-ID: <20110816231158.97D1E47C2F@hg.openjdk.java.net> Changeset: 64df57a1edec Author: ohair Date: 2011-07-22 17:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jaxws/rev/64df57a1edec 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties From michael.fang at sun.com Tue Aug 16 16:15:14 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:15:14 +0000 Subject: hg: jdk8/l10n/jdk: 75 new changesets Message-ID: <20110816232830.27B0247C31@hg.openjdk.java.net> Changeset: 6444b0a364d7 Author: jrose Date: 2011-06-14 22:47 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/6444b0a364d7 7054590: (JSR-292) MethodHandleProxies.asInterfaceInstance() accepts private/protected nested interfaces Summary: fix non-compliant logic in MethodHandleProxies, fix invalid private classes in MethodHandlesTest Reviewed-by: twisti, never ! src/share/classes/java/lang/invoke/MethodHandleProxies.java ! test/java/lang/invoke/MethodHandlesTest.java Changeset: 5f3cd0cbad56 Author: jrose Date: 2011-07-13 01:40 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/5f3cd0cbad56 Merge - src/share/classes/sun/misc/JavaxSecurityAuthKerberosAccess.java - test/sun/security/ssl/com/sun/net/ssl/internal/ssl/InputRecord/InterruptedIO.java Changeset: bfc5ec581c48 Author: jrose Date: 2011-07-16 15:40 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/bfc5ec581c48 7058630: JSR 292 method handle proxy violates contract for Object methods Reviewed-by: never, twisti ! src/share/classes/java/lang/invoke/MethodHandleProxies.java ! test/java/lang/invoke/MethodHandlesTest.java Changeset: 668edf27e9c7 Author: jrose Date: 2011-07-16 15:44 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/668edf27e9c7 7058651: JSR 292 unit tests need a refresh Summary: Enhancements to unit tests. Reviewed-by: never, twisti ! test/java/lang/invoke/JavaDocExamplesTest.java ! test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/RicochetTest.java + test/java/lang/invoke/ThrowExceptionsTest.java Changeset: b42029cd1744 Author: jrose Date: 2011-07-16 15:47 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/b42029cd1744 6983728: JSR 292 remove argument count limitations Summary: Remove workarounds and limitations from before 6939861. Reviewed-by: never ! src/share/classes/java/lang/invoke/AdapterMethodHandle.java - src/share/classes/java/lang/invoke/FilterGeneric.java - src/share/classes/java/lang/invoke/FilterOneArgument.java - src/share/classes/java/lang/invoke/FromGeneric.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandleNatives.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/invoke/MethodTypeForm.java - src/share/classes/java/lang/invoke/SpreadGeneric.java - src/share/classes/java/lang/invoke/ToGeneric.java Changeset: 74598b748a57 Author: lana Date: 2011-07-01 12:26 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/74598b748a57 Merge Changeset: 0a00216a858c Author: lana Date: 2011-07-07 19:18 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/0a00216a858c Merge - src/share/classes/sun/misc/JavaxSecurityAuthKerberosAccess.java - test/sun/security/ssl/com/sun/net/ssl/internal/ssl/InputRecord/InterruptedIO.java Changeset: 77d5cc943286 Author: prr Date: 2011-07-19 14:09 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/77d5cc943286 7068471: NPE in sun.font.FontConfigManager.getFontConfigFont() when libfontconfig.so is not installed Reviewed-by: jgodinez, prr Contributed-by: spoole at linux.vnet.ibm.com ! src/solaris/classes/sun/font/FontConfigManager.java Changeset: ae05aa9ede7b Author: bae Date: 2011-07-20 16:18 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/ae05aa9ede7b 7044285: 64 bit VM crashes in Java_sun_java2d_loops_MaskFill_MaskFill Reviewed-by: jgodinez, prr ! src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h Changeset: 40d0dea5d0fc Author: neugens Date: 2011-07-26 21:34 +0200 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/40d0dea5d0fc 7070155: A small refactoring patch for the abstract RenderingEngine. Summary: Simplify code by using ReflectiveOperationException instead of 3 ignored catch blocks Reviewed-by: prr ! src/share/classes/sun/java2d/pipe/RenderingEngine.java Changeset: 0795f0dacfec Author: bagiras Date: 2011-07-11 15:59 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/0795f0dacfec 7050935: closed/java/awt/Choice/WheelEventsConsumed/WheelEventsConsumed.html fails on win32 Reviewed-by: art, dcherepanov ! src/windows/native/sun/windows/awt_Choice.cpp ! src/windows/native/sun/windows/awt_Component.cpp ! src/windows/native/sun/windows/awt_Toolkit.cpp + test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java Changeset: acea32663757 Author: peytoia Date: 2011-07-12 08:00 +0900 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/acea32663757 7042148: closed/java/awt/font/TextLayout/CheckLayoutLTR.java failed Reviewed-by: okutsu ! src/share/classes/sun/text/bidi/BidiBase.java + test/java/text/Bidi/Bug7042148.java Changeset: 75ee78eb7322 Author: peytoia Date: 2011-07-12 08:46 +0900 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/75ee78eb7322 7051769: java.text.Bidi.toString() output is wrong Reviewed-by: okutsu ! src/share/classes/sun/text/bidi/BidiBase.java + test/java/text/Bidi/Bug7051769.java Changeset: 6bc0e1709d97 Author: lana Date: 2011-07-11 16:54 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/6bc0e1709d97 Merge Changeset: cce5659427bb Author: rupashka Date: 2011-07-12 11:41 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/cce5659427bb 7019963: The goto parent directory button doesn't operate in JFileChooser Reviewed-by: alexp ! src/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java Changeset: 5c22624d193e Author: rupashka Date: 2011-07-15 14:43 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/5c22624d193e 4909150: WindowsTreeUI can cause NullPointerException occasionally Reviewed-by: alexp ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTreeUI.java Changeset: 6ee24f03760d Author: serb Date: 2011-07-15 19:18 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/6ee24f03760d 7043679: Wrong class name is used in Java_sun_awt_windows_WPrinterJob_initIDs Reviewed-by: dav, art ! src/windows/native/sun/windows/awt_PrintJob.cpp Changeset: c90a43ebf8fd Author: serb Date: 2011-07-15 19:19 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c90a43ebf8fd 7043815: AWT-XAWT - AWT-EventQueue-0 deadlock. Reviewed-by: art, dcherepanov ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java Changeset: 252f71b26b23 Author: serb Date: 2011-07-15 19:23 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/252f71b26b23 6596915: JCK-runtime-6a/tests/api/java_awt/Component/index.html tesPaintAll fails Reviewed-by: art, dcherepanov, anthony ! src/solaris/classes/sun/awt/X11/XButtonPeer.java ! src/solaris/classes/sun/awt/X11/XCheckboxPeer.java ! src/solaris/classes/sun/awt/X11/XChoicePeer.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XLabelPeer.java ! src/solaris/classes/sun/awt/X11/XListPeer.java ! src/solaris/classes/sun/awt/X11/XMenuBarPeer.java ! src/solaris/classes/sun/awt/X11/XMenuWindow.java ! src/solaris/classes/sun/awt/X11/XPanelPeer.java ! src/solaris/classes/sun/awt/X11/XRepaintArea.java ! src/solaris/classes/sun/awt/X11/XScrollPanePeer.java ! src/solaris/classes/sun/awt/X11/XScrollbarPeer.java ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/X11/XTextFieldPeer.java ! src/solaris/classes/sun/awt/X11/XWarningWindow.java ! src/solaris/classes/sun/awt/X11/XWindow.java + test/java/awt/Component/PaintAll/PaintAll.java Changeset: 3ed58dbad819 Author: serb Date: 2011-07-15 19:24 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/3ed58dbad819 6642728: Use reflection to access ScrollPane's private method from within sun.awt package Reviewed-by: art, anthony ! src/share/classes/java/awt/ScrollPaneAdjustable.java ! src/share/classes/sun/awt/AWTAccessor.java ! src/solaris/classes/sun/awt/X11/XScrollPanePeer.java ! src/windows/classes/sun/awt/windows/WScrollPanePeer.java ! src/windows/native/sun/windows/awt_ScrollPane.cpp Changeset: 9c642ae9a543 Author: serb Date: 2011-07-15 19:25 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/9c642ae9a543 4717864: setFont() does not update Fonts of Menus already on screen Reviewed-by: art, bagiras ! src/windows/classes/sun/awt/windows/WMenuItemPeer.java ! src/windows/native/sun/windows/awt_Menu.cpp ! src/windows/native/sun/windows/awt_Menu.h ! src/windows/native/sun/windows/awt_MenuBar.cpp ! src/windows/native/sun/windows/awt_MenuBar.h ! src/windows/native/sun/windows/awt_MenuItem.cpp ! src/windows/native/sun/windows/awt_MenuItem.h Changeset: 3ac81907aa7d Author: rupashka Date: 2011-07-18 17:40 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/3ac81907aa7d 6509273: Password in JPasswordField gets Printed in clear text Reviewed-by: alexp ! src/share/classes/sun/swing/text/TextComponentPrintable.java Changeset: c05b36e4749e Author: rupashka Date: 2011-07-18 18:21 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c05b36e4749e 7031941: Use generificated JComboBox and JList in core libraries Reviewed-by: alexp ! src/share/classes/com/sun/java/swing/plaf/motif/MotifFileChooserUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsFileChooserUI.java ! src/share/classes/javax/swing/plaf/basic/BasicComboPopup.java ! src/share/classes/javax/swing/plaf/synth/SynthComboBoxUI.java ! src/share/classes/javax/swing/text/html/FormView.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLWriter.java ! src/share/classes/javax/swing/text/html/OptionComboBoxModel.java ! src/share/classes/javax/swing/text/html/OptionListModel.java ! src/share/classes/sun/swing/FilePane.java ! src/share/classes/sun/swing/plaf/synth/SynthFileChooserUIImpl.java Changeset: 190b11164876 Author: lana Date: 2011-07-27 22:42 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/190b11164876 Merge Changeset: 996547848b00 Author: lana Date: 2011-08-01 17:40 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/996547848b00 Merge Changeset: 34fdcdb70d20 Author: rupashka Date: 2011-07-28 18:13 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/34fdcdb70d20 6995769: occasion NPE thrown from SwingUtilities.computeIntersection() Reviewed-by: alexp ! src/share/classes/javax/swing/RepaintManager.java Changeset: 86098b3f7789 Author: rupashka Date: 2011-07-28 18:24 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/86098b3f7789 7071166: LayoutStyle.getPreferredGap() - IAE is expected but not thrown Reviewed-by: peterz ! src/share/classes/sun/swing/DefaultLayoutStyle.java + test/javax/swing/GroupLayout/7071166/bug7071166.java Changeset: 0ce1f0b21446 Author: serb Date: 2011-08-01 17:05 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/0ce1f0b21446 7068060: closed/java/awt/MenuBar/MenuBarSetFont/MenuBarSetFont.java failed on windows Reviewed-by: art, dcherepanov + test/java/awt/MenuBar/MenuBarSetFont/MenuBarSetFont.java Changeset: 854e74d8d956 Author: rupashka Date: 2011-08-03 16:59 +0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/854e74d8d956 7072328: Sun URL in the MetalLookAndFeel.getLayoutStyle() specification should be replaced with Oracle one Reviewed-by: peterz ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java Changeset: 634c2a492cf5 Author: lana Date: 2011-08-05 15:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/634c2a492cf5 Merge - src/share/classes/java/lang/invoke/FilterGeneric.java - src/share/classes/java/lang/invoke/FilterOneArgument.java - src/share/classes/java/lang/invoke/FromGeneric.java - src/share/classes/java/lang/invoke/SpreadGeneric.java - src/share/classes/java/lang/invoke/ToGeneric.java Changeset: e4c936c28960 Author: jjg Date: 2011-06-30 16:48 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/e4c936c28960 7061190: Update boot JDK version for JDK 8 Reviewed-by: ohair, jjg Contributed-by: alexandre.boulgakov at oracle.com ! make/common/shared/Defs-versions.gmk Changeset: cf4edfcd7119 Author: jjg Date: 2011-06-30 16:50 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/cf4edfcd7119 7061195: Clean up makefiles for JDK 8 Reviewed-by: ohair, jjg Contributed-by: alexandre.boulgakov at oracle.com ! make/common/shared/Defs-java.gmk Changeset: 74328e59a4bf Author: jjg Date: 2011-06-30 17:59 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/74328e59a4bf 7058708: Eliminate JDK build tools build warnings Reviewed-by: ohair, jjg Contributed-by: alexandre.boulgakov at oracle.com ! make/tools/Makefile ! make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java ! make/tools/src/build/tools/compileproperties/CompileProperties.java ! make/tools/src/build/tools/dirdiff/DirDiff.java ! make/tools/src/build/tools/dtdbuilder/DTDBuilder.java ! make/tools/src/build/tools/dtdbuilder/DTDInputStream.java ! make/tools/src/build/tools/dtdbuilder/DTDParser.java ! make/tools/src/build/tools/dtdbuilder/PublicMapping.java ! make/tools/src/build/tools/generatebreakiteratordata/CharSet.java ! make/tools/src/build/tools/generatebreakiteratordata/DictionaryBasedBreakIteratorBuilder.java ! make/tools/src/build/tools/generatebreakiteratordata/GenerateBreakIteratorData.java ! make/tools/src/build/tools/generatebreakiteratordata/RuleBasedBreakIteratorBuilder.java ! make/tools/src/build/tools/generatebreakiteratordata/SupplementaryCharacterData.java ! make/tools/src/build/tools/generatecharacter/GenerateCharacter.java ! make/tools/src/build/tools/generatecharacter/SpecialCaseMap.java ! make/tools/src/build/tools/generatecharacter/UnicodeSpec.java ! make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java ! make/tools/src/build/tools/hasher/Hasher.java ! make/tools/src/build/tools/jarsplit/JarSplit.java ! make/tools/src/build/tools/javazic/Gen.java ! make/tools/src/build/tools/javazic/GenDoc.java ! make/tools/src/build/tools/javazic/Main.java ! make/tools/src/build/tools/javazic/Mappings.java ! make/tools/src/build/tools/javazic/Simple.java ! make/tools/src/build/tools/javazic/Time.java ! make/tools/src/build/tools/javazic/Zoneinfo.java ! make/tools/src/build/tools/jdwpgen/AbstractCommandNode.java ! make/tools/src/build/tools/jdwpgen/AbstractGroupNode.java ! make/tools/src/build/tools/jdwpgen/AbstractNamedNode.java ! make/tools/src/build/tools/jdwpgen/AbstractTypeListNode.java ! make/tools/src/build/tools/jdwpgen/AltNode.java ! make/tools/src/build/tools/jdwpgen/CommandSetNode.java ! make/tools/src/build/tools/jdwpgen/ConstantSetNode.java ! make/tools/src/build/tools/jdwpgen/ErrorSetNode.java ! make/tools/src/build/tools/jdwpgen/Node.java ! make/tools/src/build/tools/jdwpgen/OutNode.java ! make/tools/src/build/tools/jdwpgen/RootNode.java ! make/tools/src/build/tools/jdwpgen/SelectNode.java ! make/tools/src/build/tools/makeclasslist/MakeClasslist.java ! make/tools/src/build/tools/stripproperties/StripProperties.java Changeset: e93679cf1e1a Author: valeriep Date: 2011-06-30 18:42 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/e93679cf1e1a 7058133: Javah should use the freshly built classes instead of those from the BOOTDIR jdk Summary: Changed javah to use the newly built classes specified by $(CLASSDESTDIR) Reviewed-by: vinnie ! make/sun/security/ec/Makefile ! make/sun/security/mscapi/Makefile Changeset: f0ec49c21d09 Author: valeriep Date: 2011-07-01 17:12 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/f0ec49c21d09 Merge Changeset: e88093d75e36 Author: coffeys Date: 2011-07-05 15:25 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/e88093d75e36 7041125: LDAP API does not catch malformed filters that contain two operands for the ! operator Reviewed-by: weijun, xuelei ! src/share/classes/com/sun/jndi/ldap/Filter.java ! test/com/sun/jndi/ldap/InvalidLdapFilters.java Changeset: f68d30c0a2e3 Author: mullan Date: 2011-07-06 11:08 -0400 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/f68d30c0a2e3 7054969: Null-check-in-finally pattern in java/security documentation Reviewed-by: vinnie ! src/share/classes/java/security/KeyStore.java ! src/share/classes/java/security/cert/X509CRL.java ! src/share/classes/java/security/cert/X509Certificate.java ! src/share/classes/java/security/cert/X509Extension.java Changeset: 63be90976177 Author: ksrini Date: 2011-07-08 10:25 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/63be90976177 7060849: Eliminate pack200 build warnings Reviewed-by: ksrini, jjg Contributed-by: alexandre.boulgakov at oracle.com ! make/com/sun/java/pack/Makefile ! make/common/shared/Defs-java.gmk ! src/share/classes/com/sun/java/util/jar/pack/Attribute.java ! src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ! src/share/classes/com/sun/java/util/jar/pack/ClassReader.java ! src/share/classes/com/sun/java/util/jar/pack/ClassWriter.java ! src/share/classes/com/sun/java/util/jar/pack/Code.java ! src/share/classes/com/sun/java/util/jar/pack/Coding.java ! src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ! src/share/classes/com/sun/java/util/jar/pack/Constants.java ! src/share/classes/com/sun/java/util/jar/pack/Fixups.java ! src/share/classes/com/sun/java/util/jar/pack/Instruction.java ! src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java ! src/share/classes/com/sun/java/util/jar/pack/Package.java ! src/share/classes/com/sun/java/util/jar/pack/PackageReader.java ! src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java ! src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java ! src/share/classes/com/sun/java/util/jar/pack/PropMap.java ! src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java ! src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java ! src/share/classes/com/sun/java/util/jar/pack/Utils.java Changeset: 5adf431673ac Author: peytoia Date: 2011-07-12 07:32 +0900 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/5adf431673ac 7012364: test/java/util/Locale/LocaleCategory.sh fails on Cygwin Reviewed-by: okutsu ! test/java/util/Locale/LocaleCategory.sh Changeset: 549b7c3f0bdc Author: dl Date: 2011-07-12 15:23 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/549b7c3f0bdc 7058828: test/java/util/concurrent/Phaser/Arrive.java fails intermittently Reviewed-by: chegar ! test/java/util/concurrent/Phaser/Arrive.java Changeset: 42fe05e54e69 Author: naoto Date: 2011-07-12 10:28 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/42fe05e54e69 7022407: Spinning CPU in LocaleObjectCache.get() Reviewed-by: okutsu ! src/share/classes/sun/util/locale/LocaleObjectCache.java Changeset: db419c454f92 Author: dl Date: 2011-07-13 12:24 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/db419c454f92 7057320: test/java/util/concurrent/Executors/AutoShutdown.java failing intermittently Summary: Add retry/timeout for checking activeCount Reviewed-by: chegar ! test/java/util/concurrent/Executors/AutoShutdown.java Changeset: 7ac6a297f9a0 Author: lana Date: 2011-07-14 18:57 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/7ac6a297f9a0 Merge Changeset: c0c983ca797b Author: ksrini Date: 2011-07-15 16:38 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c0c983ca797b 7062969: java -help still shows http://java.sun.com/javase/reference Reviewed-by: ohair, darcy ! src/share/classes/sun/launcher/resources/launcher.properties Changeset: d987f8738096 Author: darcy Date: 2011-07-17 18:53 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/d987f8738096 7062430: Minor inconsistency in ulp descriptions Reviewed-by: smarks, alanb ! src/share/classes/java/lang/Math.java ! src/share/classes/java/lang/StrictMath.java Changeset: cbfc7f910af3 Author: alanb Date: 2011-07-18 13:10 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/cbfc7f910af3 7068059: Update jdk/test/ProblemList.txt Reviewed-by: mchung, chegar ! test/ProblemList.txt Changeset: 8bbea505b060 Author: chegar Date: 2011-07-18 22:25 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/8bbea505b060 7021280: SocketPermission should accept wildcards Reviewed-by: michaelm ! src/share/classes/java/net/SocketPermission.java + test/java/net/SocketPermission/Wildcard.java Changeset: 5355b9ccd19d Author: xuelei Date: 2011-07-19 08:21 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/5355b9ccd19d 7059709: close the IO in a final block Reviewed-by: smarks, mullan, wetmore ! src/share/classes/sun/security/ssl/SSLContextImpl.java ! src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java Changeset: d17eb3380a49 Author: ksrini Date: 2011-07-19 10:58 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/d17eb3380a49 7067922: (launcher) java -jar throws NPE if JAR file does not contain Main-Class attribute Reviewed-by: darcy, ohair, alanb, mduigou ! src/share/classes/sun/launcher/LauncherHelper.java ! test/tools/launcher/Arrrghs.java ! test/tools/launcher/TestHelper.java Changeset: d083644bc615 Author: darcy Date: 2011-07-19 17:45 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/d083644bc615 7007535: (reflect) Please generalize Constructor and Method Reviewed-by: mduigou, peterjones, dholmes, andrew ! src/share/classes/java/lang/reflect/Constructor.java + src/share/classes/java/lang/reflect/Executable.java ! src/share/classes/java/lang/reflect/Method.java Changeset: 99dc852080e1 Author: xuelei Date: 2011-07-19 21:47 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/99dc852080e1 7065972: Some race condition may happen in SSLSocketImpl class Reviewed-by: wetmore, weijun, dgu ! src/share/classes/sun/security/ssl/SSLSocketImpl.java Changeset: 9505edecc8b5 Author: jjg Date: 2011-07-20 12:19 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/9505edecc8b5 7068617: Core libraries don't build with javac -Xlint:all -Werror Reviewed-by: darcy Contributed-by: alexandre.boulgakov at oracle.com ! make/java/java/Makefile ! src/share/classes/sun/reflect/generics/reflectiveObjects/NotImplementedException.java ! src/share/classes/sun/reflect/misc/ConstructorUtil.java ! src/share/classes/sun/reflect/misc/FieldUtil.java ! src/share/classes/sun/reflect/misc/MethodUtil.java ! src/share/classes/sun/reflect/misc/ReflectUtil.java Changeset: 70ec3aa8e99a Author: chegar Date: 2011-07-21 17:28 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/70ec3aa8e99a 7068416: Lightweight HTTP Server should support TCP_NODELAY Reviewed-by: alanb, michaelm ! src/share/classes/sun/net/httpserver/ServerConfig.java ! src/share/classes/sun/net/httpserver/ServerImpl.java ! test/com/sun/net/httpserver/Test1.java Changeset: c8dbb9e19355 Author: weijun Date: 2011-07-22 10:25 +0800 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c8dbb9e19355 6330275: Rework the PaddingTest regression test. Reviewed-by: wetmore, smarks ! test/ProblemList.txt ! test/com/sun/crypto/provider/Cipher/DES/PaddingTest.java Changeset: 0ec4b6498a69 Author: ohair Date: 2011-07-22 17:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/0ec4b6498a69 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties Changeset: a499fdfbe723 Author: ohair Date: 2011-07-22 21:31 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/a499fdfbe723 Merge Changeset: 07a12583d4ea Author: chegar Date: 2011-07-25 14:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/07a12583d4ea 7035556: DatagramSocket.java:183: warning: unreachable catch clause Summary: Remove redundant catches in bind Reviewed-by: alanb, michaelm, wetmore, chegar Contributed-by: kurchi.subhra.hazra at oracle.com ! src/share/classes/java/net/DatagramSocket.java Changeset: c563e8060adf Author: jjg Date: 2011-07-25 16:20 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c563e8060adf 7069870: Parts of the JDK erroneously rely on generic array initializers with diamond Reviewed-by: ksrini, mcimadamore Contributed-by: alexandre.boulgakov at oracle.com ! make/tools/src/build/tools/jarsplit/JarSplit.java ! src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java Changeset: a80562f7ea50 Author: chegar Date: 2011-07-27 18:10 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/a80562f7ea50 6670868: StackOverFlow with bad authenticated Proxy tunnels Reviewed-by: michaelm ! src/share/classes/sun/net/www/http/HttpClient.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java + test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/HttpsProxyStackOverflow.java Changeset: 7525866a4046 Author: jjg Date: 2011-07-28 13:34 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/7525866a4046 7068616: NIO libraries do not build with javac -Xlint:all,-deprecation -Werror Reviewed-by: alanb, chegar Contributed-by: alexandre.boulgakov at oracle.com ! make/com/sun/nio/Makefile ! make/com/sun/nio/sctp/Makefile ! make/java/nio/Makefile ! make/java/sun_nio/Makefile ! make/sun/nio/Makefile ! make/sun/nio/cs/Makefile ! src/share/classes/java/nio/X-Buffer.java.template ! src/share/classes/java/nio/channels/AsynchronousFileChannel.java ! src/share/classes/java/nio/channels/FileChannel.java ! src/share/classes/java/nio/charset/Charset.java ! src/share/classes/sun/nio/ch/DatagramSocketAdaptor.java ! src/share/classes/sun/nio/ch/Reflect.java ! src/share/classes/sun/nio/ch/SelectorImpl.java ! src/share/classes/sun/nio/ch/Util.java ! src/share/classes/sun/nio/cs/FastCharsetProvider.java ! src/share/classes/sun/nio/cs/StreamDecoder.java ! src/share/classes/sun/nio/cs/ThreadLocalCoders.java ! src/share/classes/sun/nio/fs/Util.java ! src/solaris/classes/sun/nio/ch/SctpChannelImpl.java ! src/solaris/classes/sun/nio/ch/SctpMultiChannelImpl.java ! src/solaris/classes/sun/nio/ch/SctpNet.java ! src/solaris/classes/sun/nio/ch/SctpServerChannelImpl.java ! src/windows/classes/sun/nio/ch/PendingIoCache.java ! src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java ! src/windows/classes/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java Changeset: cea7c749f805 Author: xuelei Date: 2011-07-29 02:50 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/cea7c749f805 7068662: Reserve and restore the default locale Reviewed-by: alanb, weijun ! test/com/sun/org/apache/xml/internal/security/exceptions/LocaleTest.java ! test/java/beans/XMLDecoder/Test6341798.java ! test/java/io/pathNames/win32/bug6344646.java ! test/java/net/CookieHandler/B6791927.java ! test/java/net/URLConnection/SetIfModifiedSince.java ! test/java/util/Locale/LocaleCategory.java ! test/java/util/PluggableLocale/CurrencyNameProviderTest.java ! test/java/util/PluggableLocale/TimeZoneNameProviderTest.java ! test/java/util/ResourceBundle/Bug6190861.java ! test/java/util/ResourceBundle/Control/Bug6530694.java ! test/java/util/ResourceBundle/Control/StressTest.java ! test/java/util/ResourceBundle/Test4314141.java ! test/java/util/ResourceBundle/Test4318520.java ! test/java/util/jar/JarFile/TurkCert.java ! test/javax/crypto/Cipher/Turkish.java ! test/javax/swing/JColorChooser/Test6524757.java ! test/sun/security/tools/keytool/KeyToolTest.java ! test/sun/text/resources/Collator/Bug4248694.java ! test/sun/text/resources/Collator/Bug4804273.java ! test/sun/text/resources/Collator/Bug4848897.java ! test/sun/text/resources/Format/Bug4651568.java ! test/sun/util/resources/Locale/Bug4965260.java ! test/sun/util/resources/TimeZone/Bug4640234.java Changeset: 4030297803eb Author: jjg Date: 2011-07-29 16:45 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/4030297803eb 7072523: java.math should be built with javac -Xlint:all -Werror Reviewed-by: darcy Contributed-by: alexandre.boulgakov at oracle.com ! make/java/math/Makefile Changeset: 809e8db0c142 Author: chegar Date: 2011-07-29 10:55 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/809e8db0c142 6978200: ServerSocket.toString include "port=0" in the returned String Summary: Removal of "port=0" from ServerSocket.toString method Reviewed-by: alanb, chegar Contributed-by: kurchi.subhra.hazra at oracle.com ! src/share/classes/java/net/ServerSocket.java Changeset: e68db408d08c Author: weijun Date: 2011-08-04 18:18 +0800 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/e68db408d08c 7061379: [Kerberos] Cross-realm authentication fails, due to nameType problem Reviewed-by: valeriep ! src/share/classes/sun/security/krb5/PrincipalName.java ! test/sun/security/krb5/auto/KDC.java + test/sun/security/krb5/auto/PrincipalNameEquals.java Changeset: 565555e89034 Author: mduigou Date: 2011-08-04 08:53 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/565555e89034 7073296: Executable.equalParamTypes() incorrectly returns true when the number of params differs. Reviewed-by: alanb, darcy ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/reflect/Executable.java + test/java/lang/reflect/Constructor/Equals.java Changeset: b9fffbe98230 Author: darcy Date: 2011-08-06 14:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/b9fffbe98230 7075098: Remove unused fdlibm files Reviewed-by: alanb, mduigou ! make/java/fdlibm/FILES_c.gmk ! src/share/native/java/lang/fdlibm/include/fdlibm.h ! src/share/native/java/lang/fdlibm/include/jfdlibm.h - src/share/native/java/lang/fdlibm/src/e_acosh.c - src/share/native/java/lang/fdlibm/src/e_gamma.c - src/share/native/java/lang/fdlibm/src/e_gamma_r.c - src/share/native/java/lang/fdlibm/src/e_j0.c - src/share/native/java/lang/fdlibm/src/e_j1.c - src/share/native/java/lang/fdlibm/src/e_jn.c - src/share/native/java/lang/fdlibm/src/e_lgamma.c - src/share/native/java/lang/fdlibm/src/e_lgamma_r.c - src/share/native/java/lang/fdlibm/src/s_asinh.c - src/share/native/java/lang/fdlibm/src/s_erf.c - src/share/native/java/lang/fdlibm/src/w_acosh.c - src/share/native/java/lang/fdlibm/src/w_gamma.c - src/share/native/java/lang/fdlibm/src/w_gamma_r.c - src/share/native/java/lang/fdlibm/src/w_j0.c - src/share/native/java/lang/fdlibm/src/w_j1.c - src/share/native/java/lang/fdlibm/src/w_jn.c - src/share/native/java/lang/fdlibm/src/w_lgamma.c - src/share/native/java/lang/fdlibm/src/w_lgamma_r.c Changeset: 3f3a59423a7e Author: lana Date: 2011-08-05 16:03 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/3f3a59423a7e Merge - src/share/classes/java/lang/invoke/FilterGeneric.java - src/share/classes/java/lang/invoke/FilterOneArgument.java - src/share/classes/java/lang/invoke/FromGeneric.java - src/share/classes/java/lang/invoke/SpreadGeneric.java - src/share/classes/java/lang/invoke/ToGeneric.java Changeset: a5f825ef8587 Author: lana Date: 2011-08-07 17:03 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/a5f825ef8587 Merge - src/share/native/java/lang/fdlibm/src/e_acosh.c - src/share/native/java/lang/fdlibm/src/e_gamma.c - src/share/native/java/lang/fdlibm/src/e_gamma_r.c - src/share/native/java/lang/fdlibm/src/e_j0.c - src/share/native/java/lang/fdlibm/src/e_j1.c - src/share/native/java/lang/fdlibm/src/e_jn.c - src/share/native/java/lang/fdlibm/src/e_lgamma.c - src/share/native/java/lang/fdlibm/src/e_lgamma_r.c - src/share/native/java/lang/fdlibm/src/s_asinh.c - src/share/native/java/lang/fdlibm/src/s_erf.c - src/share/native/java/lang/fdlibm/src/w_acosh.c - src/share/native/java/lang/fdlibm/src/w_gamma.c - src/share/native/java/lang/fdlibm/src/w_gamma_r.c - src/share/native/java/lang/fdlibm/src/w_j0.c - src/share/native/java/lang/fdlibm/src/w_j1.c - src/share/native/java/lang/fdlibm/src/w_jn.c - src/share/native/java/lang/fdlibm/src/w_lgamma.c - src/share/native/java/lang/fdlibm/src/w_lgamma_r.c Changeset: 94934ebbb654 Author: alanb Date: 2011-08-08 13:20 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/94934ebbb654 7076215: (jli) jdk/src/share/bin/jli_util.h should include function prototypes for str functions Reviewed-by: alanb Contributed-by: neil.richards at ngmr.net ! src/share/bin/jli_util.h Changeset: d4ab25d65adb Author: darcy Date: 2011-08-08 09:07 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/d4ab25d65adb 6380161: (reflect) Exception from newInstance() not chained to cause. Reviewed-by: dholmes, lancea, forax ! src/share/classes/java/lang/Class.java Changeset: 0f1b4b3bc833 Author: mchung Date: 2011-08-08 16:26 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/0f1b4b3bc833 7036518: TEST_BUG: add cygwin support to test/java/nio/charset/coders/CheckSJISMappingProp.sh 7036519: TEST_BUG: add cygwin support to test/demo/zipfs/basic.sh Reviewed-by: sherman ! test/demo/zipfs/basic.sh ! test/java/nio/charset/coders/CheckSJISMappingProp.sh Changeset: 39498fc31d63 Author: mchung Date: 2011-08-08 16:27 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/39498fc31d63 7012365: TEST_BUG: test/java/nio/charset/spi/basic.sh can be run with Cygwin Reviewed-by: darcy ! test/java/nio/charset/spi/basic.sh Changeset: 26fe74aa48ef Author: chegar Date: 2011-08-09 16:39 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/26fe74aa48ef 7073295: TEST_BUG: test/java/lang/instrument/ManifestTest.sh causing havoc (win) Reviewed-by: mchung ! test/java/lang/instrument/ManifestTest.sh Changeset: cf203f293b4e Author: chegar Date: 2011-08-09 16:59 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/cf203f293b4e 7076756: TEST_BUG: com/sun/jdi/BreakpointWithFullGC.sh fails to cleanup in Cygwin Reviewed-by: alanb, dcubed ! test/com/sun/jdi/ShellScaffold.sh Changeset: 2cdbbc4a6359 Author: lana Date: 2011-08-09 17:38 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/2cdbbc4a6359 Merge - src/share/native/java/lang/fdlibm/src/e_acosh.c - src/share/native/java/lang/fdlibm/src/e_gamma.c - src/share/native/java/lang/fdlibm/src/e_gamma_r.c - src/share/native/java/lang/fdlibm/src/e_j0.c - src/share/native/java/lang/fdlibm/src/e_j1.c - src/share/native/java/lang/fdlibm/src/e_jn.c - src/share/native/java/lang/fdlibm/src/e_lgamma.c - src/share/native/java/lang/fdlibm/src/e_lgamma_r.c - src/share/native/java/lang/fdlibm/src/s_asinh.c - src/share/native/java/lang/fdlibm/src/s_erf.c - src/share/native/java/lang/fdlibm/src/w_acosh.c - src/share/native/java/lang/fdlibm/src/w_gamma.c - src/share/native/java/lang/fdlibm/src/w_gamma_r.c - src/share/native/java/lang/fdlibm/src/w_j0.c - src/share/native/java/lang/fdlibm/src/w_j1.c - src/share/native/java/lang/fdlibm/src/w_jn.c - src/share/native/java/lang/fdlibm/src/w_lgamma.c - src/share/native/java/lang/fdlibm/src/w_lgamma_r.c From michael.fang at sun.com Tue Aug 16 16:32:06 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Tue, 16 Aug 2011 23:32:06 +0000 Subject: hg: jdk8/l10n/langtools: 15 new changesets Message-ID: <20110816233241.627A347C32@hg.openjdk.java.net> Changeset: b0909f992710 Author: ksrini Date: 2011-06-30 14:33 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/b0909f992710 7059905: (javadoc) promote method visibility for netbeans usage Reviewed-by: jjg, bpatel ! src/share/classes/com/sun/tools/javadoc/AnnotationTypeDocImpl.java ! src/share/classes/com/sun/tools/javadoc/AnnotationTypeElementDocImpl.java ! src/share/classes/com/sun/tools/javadoc/DocEnv.java ! src/share/classes/com/sun/tools/javadoc/DocImpl.java ! src/share/classes/com/sun/tools/javadoc/JavadocClassReader.java ! src/share/classes/com/sun/tools/javadoc/JavadocMemberEnter.java ! src/share/classes/com/sun/tools/javadoc/PackageDocImpl.java Changeset: 409b104f8b86 Author: ksrini Date: 2011-07-01 13:34 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/409b104f8b86 6735320: StringIndexOutOfBoundsException for empty @serialField tag Reviewed-by: jjg, bpatel ! src/share/classes/com/sun/tools/javadoc/SerialFieldTagImpl.java + test/com/sun/javadoc/T6735320/SerialFieldTest.java + test/com/sun/javadoc/T6735320/T6735320.java ! test/com/sun/javadoc/lib/JavadocTester.java Changeset: 0d8edba73d70 Author: ksrini Date: 2011-07-01 14:28 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/0d8edba73d70 7060642: (javadoc) improve performance on accessing inlinedTags Reviewed-by: jjg, bpatel ! src/share/classes/com/sun/tools/javadoc/ParamTagImpl.java ! src/share/classes/com/sun/tools/javadoc/ThrowsTagImpl.java Changeset: 111bbf1ad913 Author: darcy Date: 2011-07-05 16:37 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/111bbf1ad913 7025809: Provided new utility visitors supporting SourceVersion.RELEASE_8 Reviewed-by: jjg, mcimadamore ! src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/share/classes/com/sun/tools/javac/processing/JavacRoundEnvironment.java ! src/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java ! src/share/classes/com/sun/tools/javah/JavahTask.java ! src/share/classes/com/sun/tools/javah/LLNI.java ! src/share/classes/com/sun/tools/javah/TypeSignature.java ! src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java ! src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor7.java + src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor8.java ! src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java ! src/share/classes/javax/lang/model/util/AbstractElementVisitor7.java + src/share/classes/javax/lang/model/util/AbstractElementVisitor8.java ! src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java ! src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java + src/share/classes/javax/lang/model/util/AbstractTypeVisitor8.java ! src/share/classes/javax/lang/model/util/ElementKindVisitor6.java ! src/share/classes/javax/lang/model/util/ElementKindVisitor7.java + src/share/classes/javax/lang/model/util/ElementKindVisitor8.java ! src/share/classes/javax/lang/model/util/ElementScanner6.java ! src/share/classes/javax/lang/model/util/ElementScanner7.java + src/share/classes/javax/lang/model/util/ElementScanner8.java ! src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java ! src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor7.java + src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor8.java ! src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java ! src/share/classes/javax/lang/model/util/SimpleElementVisitor7.java + src/share/classes/javax/lang/model/util/SimpleElementVisitor8.java ! src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java ! src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java + src/share/classes/javax/lang/model/util/SimpleTypeVisitor8.java ! src/share/classes/javax/lang/model/util/TypeKindVisitor6.java ! src/share/classes/javax/lang/model/util/TypeKindVisitor7.java + src/share/classes/javax/lang/model/util/TypeKindVisitor8.java ! src/share/sample/javac/processing/src/CheckNamesProcessor.java ! test/tools/javac/6402516/CheckLocalElements.java ! test/tools/javac/api/TestOperators.java ! test/tools/javac/enum/6350057/T6350057.java ! test/tools/javac/enum/6424358/T6424358.java ! test/tools/javac/failover/FailOver15.out ! test/tools/javac/lib/JavacTestingAbstractProcessor.java ! test/tools/javac/multicatch/model/ModelChecker.java ! test/tools/javac/processing/model/6194785/T6194785.java ! test/tools/javac/processing/model/TestSymtabItems.java ! test/tools/javac/processing/model/element/TestMissingElement/TestMissingElement.java ! test/tools/javac/processing/model/element/TestResourceVariable.java ! test/tools/javac/processing/model/type/NoTypes.java ! test/tools/javac/processing/model/type/TestUnionType.java ! test/tools/javac/processing/model/util/deprecation/TestDeprecation.java Changeset: 7337295434b6 Author: jjg Date: 2011-07-07 13:29 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/7337295434b6 7061125: Proposed javac argument processing performance improvement Reviewed-by: jjg, dlsmith, mcimadamore, forax Contributed-by: schlosna at gmail.com ! src/share/classes/com/sun/tools/javac/api/JavacTaskImpl.java ! src/share/classes/com/sun/tools/javac/main/Main.java ! test/tools/javac/T6358166.java ! test/tools/javac/T6358168.java Changeset: 025a370b9fc3 Author: lana Date: 2011-07-14 18:58 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/025a370b9fc3 Merge Changeset: 2d3096441387 Author: ohair Date: 2011-07-22 17:35 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/2d3096441387 7069993: Adjust make/jprt.properties file for jdk8 Reviewed-by: katleman ! make/jprt.properties Changeset: 36f31b87b0ab Author: ohair Date: 2011-07-22 21:31 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/36f31b87b0ab Merge Changeset: 0b5beb9562c6 Author: mcimadamore Date: 2011-07-27 19:00 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/0b5beb9562c6 7062745: Regression: difference in overload resolution when two methods are maximally specific Summary: Fix most specific when two methods are maximally specific and only one has non-raw return type Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/generics/rawOverride/7062745/GenericOverrideTest.java + test/tools/javac/generics/rawOverride/7062745/T7062745neg.java + test/tools/javac/generics/rawOverride/7062745/T7062745neg.out + test/tools/javac/generics/rawOverride/7062745/T7062745pos.java Changeset: d5f33267a06d Author: mcimadamore Date: 2011-07-27 19:01 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/d5f33267a06d 7046778: Project Coin: problem with diamond and member inner classes Summary: Diamond inference generates spurious error messages when target type is a member inner class Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/generics/diamond/7046778/DiamondAndInnerClassTest.java ! test/tools/javac/generics/diamond/neg/Neg09.out Changeset: e427c42e1a7e Author: mcimadamore Date: 2011-07-27 19:01 +0100 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/e427c42e1a7e 7057297: Project Coin: diamond erroneously accepts in array initializer expressions Summary: Diamond in array initializer expressions should be rejected Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/CannotCreateArrayWithDiamond.java + test/tools/javac/generics/diamond/7057297/T7057297.java + test/tools/javac/generics/diamond/7057297/T7057297.out Changeset: 0d6d41563040 Author: ksrini Date: 2011-07-27 11:53 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/0d6d41563040 7068902: (javac) allow enabling or disabling of String folding Summary: Contributed by netbeans team, modified to suit by the langtools team. Reviewed-by: jjg, mcimadamore ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java + test/tools/javac/parser/StringFoldingTest.java Changeset: 64b9b7ae3366 Author: darcy Date: 2011-08-04 11:15 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/64b9b7ae3366 7071246: Enclosing string literal in parenthesis in switch-case crashes javac Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! test/tools/javac/StringsInSwitch/StringSwitches.java Changeset: c0d5f93af048 Author: jjg Date: 2011-08-05 15:57 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/c0d5f93af048 7074189: some javac tests fail with latest jtreg 4.1 b03 Reviewed-by: darcy + test/tools/javac/lib/CompileFail.java ! test/tools/javac/processing/errors/TestOptionSyntaxErrors.java ! test/tools/javac/processing/errors/TestReturnCode.java ! test/tools/javac/warnings/Serial.java Changeset: e9f118c2bd3c Author: ksrini Date: 2011-08-05 19:41 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/langtools/rev/e9f118c2bd3c 7064544: (javadoc) miscellaneous fixes requested by netbeans Summary: Contributed by netbeans team, modified to suit by the langtools team. Reviewed-by: jjg, bpatel ! src/share/classes/com/sun/tools/javadoc/ClassDocImpl.java ! src/share/classes/com/sun/tools/javadoc/Comment.java ! src/share/classes/com/sun/tools/javadoc/JavadocEnter.java ! test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java ! test/com/sun/javadoc/testLinkTaglet/pkg/C.java From michael.fang at sun.com Wed Aug 17 20:23:31 2011 From: michael.fang at sun.com (michael.fang at sun.com) Date: Thu, 18 Aug 2011 03:23:31 +0000 Subject: hg: jdk8/l10n/jdk: 2 new changesets Message-ID: <20110818032410.3392447CB2@hg.openjdk.java.net> Changeset: c9956a6753fb Author: yhuang Date: 2011-08-14 23:46 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/c9956a6753fb 7066203: Update currency data to the latest ISO 4217 standard Reviewed-by: naoto ! make/java/util/FILES_properties.gmk ! make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java ! src/share/classes/java/util/CurrencyData.properties ! src/share/classes/java/util/LocaleISOData.java ! src/share/classes/sun/util/resources/CurrencyNames.properties ! src/share/classes/sun/util/resources/CurrencyNames_de.properties ! src/share/classes/sun/util/resources/CurrencyNames_es.properties + src/share/classes/sun/util/resources/CurrencyNames_es_CU.properties ! src/share/classes/sun/util/resources/CurrencyNames_et_EE.properties ! src/share/classes/sun/util/resources/CurrencyNames_fr.properties ! src/share/classes/sun/util/resources/CurrencyNames_ja.properties ! src/share/classes/sun/util/resources/CurrencyNames_ko.properties ! src/share/classes/sun/util/resources/CurrencyNames_pt.properties ! src/share/classes/sun/util/resources/CurrencyNames_sk_SK.properties ! src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties ! src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties ! src/share/classes/sun/util/resources/LocaleNames.properties ! test/java/util/Currency/ValidateISO4217.java ! test/java/util/Currency/tablea1.txt ! test/java/util/Locale/LocaleTest.java ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 954efddeee41 Author: mfang Date: 2011-08-17 14:18 -0700 URL: http://hg.openjdk.java.net/jdk8/l10n/jdk/rev/954efddeee41 Merge ! make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java From Alan.Bateman at oracle.com Wed Aug 24 12:03:49 2011 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 24 Aug 2011 20:03:49 +0100 Subject: code review for 7067811: Update demo/sample code to state it should not be used for production In-Reply-To: <4E54F877.80802@oracle.com> References: <4E43EFCB.70406@oracle.com> <4E43FC42.1080902@oracle.com> <4E45858C.7060400@oracle.com> <0810FDCE-255B-4962-953F-1F49DA909BF3@oracle.com> <4E54F877.80802@oracle.com> Message-ID: <4E554B15.1010509@oracle.com> Nils Loodin wrote: > : > > Finally on the documentation of applications, such as the lightweight > HTTP server, that are shipped for testing/debugging, the following > disclaimer should be added: > > Applications such as the lightweight HTTP server are shipped with the > JDK to help developers deploy and test their code easily. They have > not been developed in accordance to software development standards for > production-quality applications. Usage of such test and/or support > applications in production environments is strongly discouraged. > "Applications such as the lightweight HTTP server" - I'm not sure that I understand what the requester means here. I wonder if they are talking about the HTTP server API (src/share/classes/com/sun/net/httpserver) or do they really mean the NIO sample code in src/share/sample/nio/server? -Alan. From xueming.shen at oracle.com Mon Aug 29 12:10:18 2011 From: xueming.shen at oracle.com (Xueming Shen) Date: Mon, 29 Aug 2011 12:10:18 -0700 Subject: Request for review: 7084245: Update usages of InternalError to use exception chaining In-Reply-To: <4E5A989E.8070103@gmx.de> References: <4E5A989E.8070103@gmx.de> Message-ID: <4E5BE41A.8050000@oracle.com> Hi Sebastian, I will help to push the patch, if people all agreed the changes proposed. I pulled your patch and generated the webrev at http://cr.openjdk.java.net/~sherman/7084245/webrev with couple changes from your original patch. (1) Undo the changes in DecimalFormat.java and Format.java. while arguably your suggested change might be the correct/better one for the situation, but it's a behavior change, personally I don't think you want to change the behavior, whether it is a "better" solution (not just look better) or "bug fix", in this kind of clean-up project. Leave that to separate "bug fix" patch, if you believe the existing code is buggy/wrong. (2) Removed your comment and left the printStackTrace() in LoopPipe.java untouched. Again, that printStackTrace() might be unintentional, a leftover of the debug version for example, but I'm not sure. Until the 2d engineer that is the case, I would prefer to leave it un-touched. (3) Removed the concurrent package changes from the list. As discussed previously These changes might go different path to get it, if agreed. It appears Xuelei.Fan from security might have some options on the changes made in security area. So Xuelei, do you want me to pull out the changes in security area and leave that for your to deal with separately? Personally I think it's nice to make the switch to the new chaining version if the original code is "new InternalError(msg) + initCause()", in which case it has the clear intention that implementation does want to expose the original cause of this InternalError. But for the case of InternalError(msg) only, the proposed change actually again changes the behavior/intention of the original code, in which it might not be desirable to expose the original cause when throw the InternalError. As suggested in the Throwable API doc, the "hiding" might be purposely, to separate different levels of abstraction when throw the InternalError. -Sherman On 08/28/2011 12:35 PM, Sebastian Sickelmann wrote: > Hi, here is a webrev[1] for some cleanup that i want to integrated in > tl-repositories. > > Alan Bateman had scanned the changes and gave me some good input[3] > for further discussion here: > > The changes to java.util.concurrent should go through Doug Lea's > upstream CVS. Alan told me that Chris Hegarty is on this topic > already. The suggested changes for this is here[2]. > > I have changed some classes in awt / sun.java2d maybe someone of the > 2d-dev maillinglist can look at these changes. > I also changed some classes in java/securtiy maybe someone of > security-dev maillinglist can look at these changes. > > Let me know if there is a need to split/rebase the main-webrev[1] to > review and/or push it individually. > > Mostly the patch changes exception-chains. But there are some places > where the patch changes behavoir: > > - I removed some printstackTraces in > sun.java2d.pipe.LoopPipe.getStrokesSpans and sun.misc.Launcher (Alan > told me that kumar maybe want to have a look at it?). > - I changed java.text.Format.clone not to return null. I think it will > never happen. But if so throwing an InternalError seems to be better > than returning null and let all the extended classes crash in there > clone Method with a NullPointerException. And so catching an Exception > in java.text.DecimalFormat.clone is unnecessary. > > -- Sebastian > > [1] http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_main_0/ > [2] > http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_concurrent_0/ > [3] > http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-August/007563.html From sebastian.sickelmann at gmx.de Tue Aug 30 01:20:41 2011 From: sebastian.sickelmann at gmx.de (Sebastian Sickelmann) Date: Tue, 30 Aug 2011 10:20:41 +0200 Subject: Request for review: 7084245: Update usages of InternalError to use exception chaining In-Reply-To: <4E5BE41A.8050000@oracle.com> References: <4E5A989E.8070103@gmx.de> <4E5BE41A.8050000@oracle.com> Message-ID: <4E5C9D59.3030202@gmx.de> Am 29.08.2011 21:10, schrieb Xueming Shen: > Hi Sebastian, > > I will help to push the patch, if people all agreed the changes proposed. Thanks for supporting this. > > I pulled your patch and generated the webrev at > > http://cr.openjdk.java.net/~sherman/7084245/webrev I already created a new webrev that handles the suggested changes of Mario Torre. They sounded reasonable for me. > > with couple changes from your original patch. > > (1) Undo the changes in DecimalFormat.java and Format.java. > while arguably your suggested change might be the correct/better > one for > the situation, but it's a behavior change, personally I don't > think you want > to change the behavior, whether it is a "better" solution (not > just look better) > or "bug fix", in this kind of clean-up project. Leave that to > separate "bug fix" > patch, if you believe the existing code is buggy/wrong. Not changing this at all is not the intention of this. Even if the CloneNotSupportedException cannot be thrown, chaining is what can be done to make it more clear what happend. I don't think that i changed behavoir that much: - Returning null in Format will mostly (if not always) result in NullPointerException in the extending class. - DecimalFormat is the only class in jdk i found that makes it "correct" and catch it and throw an InternalError. If i think about how the catch in DecimalFormat maybe come into the codebase it must be that Format.clone must somehow returned null in the past. Which is a bizarre case, because it cannot happen cause Format is cloneable. > > (2) Removed your comment and left the printStackTrace() in LoopPipe.java > untouched. Again, that printStackTrace() might be unintentional, > a leftover of > the debug version for example, but I'm not sure. Until the 2d > engineer that is > the case, I would prefer to leave it un-touched. > > (3) Removed the concurrent package changes from the list. As discussed > previously > These changes might go different path to get it, if agreed. Done a special webrev for this here: http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_concurrent_0/ > > It appears Xuelei.Fan from security might have some options on the > changes made > in security area. So Xuelei, do you want me to pull out the changes in > security > area and leave that for your to deal with separately? Xuelei.Fan gave some input for the security area. He said Exceptions thrown by a method should be defined at an abstraction level consistent with what the method does, not necessarily with the low-level details of how it is implemented. and i think he is totally right. But if i read it right in Throwable this is exactly what the Throwable.cause is intended for. * One reason that a throwable may have a cause is that the class that * throws it is built atop a lower layered abstraction, and an operation on * the upper layer fails due to a failure in the lower layer. It would be bad * design to let the throwable thrown by the lower layer propagate outward, as * it is generally unrelated to the abstraction provided by the upper layer. * Further, doing so would tie the API of the upper layer to the details of * its implementation, assuming the lower layer's exception was a checked * exception. Throwing a "wrapped exception" (i.e., an exception containing a * cause) allows the upper layer to communicate the details of the failure to * its caller without incurring either of these shortcomings. It preserves * the flexibility to change the implementation of the upper layer without * changing its API (in particular, the set of exceptions thrown by its * methods). > > Personally I think it's nice to make the switch to the new chaining > version if the > original code is "new InternalError(msg) + initCause()", in which case > it has the > clear intention that implementation does want to expose the original > cause of > this InternalError. But for the case of InternalError(msg) only, the > proposed change > actually again changes the behavior/intention of the original code, in > which it might > not be desirable to expose the original cause when throw the > InternalError. As > suggested in the Throwable API doc, the "hiding" might be purposely, > to separate > different levels of abstraction when throw the InternalError. Two comments on this: 1. You maybe haven't noticed it. "new InternalError(msg).initCause()" is handled in a previous patch http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c43af666d130 2. You share this opinion with Xuelei.Fan. I think exactly the other way around. That maybe comes from my application development background where intensive logging and long stacktraces are the only information basis you got in production code. The only reason i see to be carefully with long exception-chains is GC and serialization/transfer-costs as i have written in http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-August/007562.html I will not say that Alan is supporting this meaning but he somewhat followed the idea in his follow-up. I think we should think about it and get some more general policy when to chain and when not and document it in Throwable javadoc more clearly. I cannot find the place in Throwable API you mentioned about hiding. > -Sherman -- Sebastian From sebastian.sickelmann at gmx.de Tue Aug 30 01:23:55 2011 From: sebastian.sickelmann at gmx.de (Sebastian Sickelmann) Date: Tue, 30 Aug 2011 10:23:55 +0200 Subject: Request for review: 7084245: Update usages of InternalError to use exception chaining In-Reply-To: <4E5C9D59.3030202@gmx.de> References: <4E5A989E.8070103@gmx.de> <4E5BE41A.8050000@oracle.com> <4E5C9D59.3030202@gmx.de> Message-ID: <4E5C9E1B.4070800@gmx.de> Sorry i have forgotten the webrev url. http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_main_1/ Am 30.08.2011 10:20, schrieb Sebastian Sickelmann: > Am 29.08.2011 21:10, schrieb Xueming Shen: >> Hi Sebastian, >> >> I will help to push the patch, if people all agreed the changes >> proposed. > Thanks for supporting this. >> >> I pulled your patch and generated the webrev at >> >> http://cr.openjdk.java.net/~sherman/7084245/webrev > I already created a new webrev that handles the suggested changes of > Mario Torre. > They sounded reasonable for me. > >> >> with couple changes from your original patch. >> >> (1) Undo the changes in DecimalFormat.java and Format.java. >> while arguably your suggested change might be the correct/better >> one for >> the situation, but it's a behavior change, personally I don't >> think you want >> to change the behavior, whether it is a "better" solution (not >> just look better) >> or "bug fix", in this kind of clean-up project. Leave that to >> separate "bug fix" >> patch, if you believe the existing code is buggy/wrong. > Not changing this at all is not the intention of this. Even if the > CloneNotSupportedException > cannot be thrown, chaining is what can be done to make it more clear > what happend. > I don't think that i changed behavoir that much: > - Returning null in Format will mostly (if not always) result in > NullPointerException in > the extending class. > - DecimalFormat is the only class in jdk i found that makes it > "correct" and catch it and throw > an InternalError. > If i think about how the catch in DecimalFormat maybe come into the > codebase it must > be that Format.clone must somehow returned null in the past. Which > is a bizarre case, > because it cannot happen cause Format is cloneable. >> >> (2) Removed your comment and left the printStackTrace() in LoopPipe.java >> untouched. Again, that printStackTrace() might be >> unintentional, a leftover of >> the debug version for example, but I'm not sure. Until the 2d >> engineer that is >> the case, I would prefer to leave it un-touched. >> >> (3) Removed the concurrent package changes from the list. As >> discussed previously >> These changes might go different path to get it, if agreed. > Done a special webrev for this here: > > http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_concurrent_0/ >> >> It appears Xuelei.Fan from security might have some options on the >> changes made >> in security area. So Xuelei, do you want me to pull out the changes >> in security >> area and leave that for your to deal with separately? > Xuelei.Fan gave some input for the security area. He said > > Exceptions thrown by a method should be defined at an > abstraction level > consistent with what the method does, not necessarily with the > low-level > details of how it is implemented. > > and i think he is totally right. But if i read it right in Throwable > this is exactly > what the Throwable.cause is intended for. > > * One reason that a throwable may have a cause is that the class that > * throws it is built atop a lower layered abstraction, and an > operation on > * the upper layer fails due to a failure in the lower layer. It > would be bad > * design to let the throwable thrown by the lower layer propagate > outward, as > * it is generally unrelated to the abstraction provided by the upper > layer. > * Further, doing so would tie the API of the upper layer to the > details of > * its implementation, assuming the lower layer's exception was a checked > * exception. Throwing a "wrapped exception" (i.e., an exception > containing a > * cause) allows the upper layer to communicate the details of the > failure to > * its caller without incurring either of these shortcomings. It > preserves > * the flexibility to change the implementation of the upper layer > without > * changing its API (in particular, the set of exceptions thrown by its > * methods). > > >> >> Personally I think it's nice to make the switch to the new chaining >> version if the >> original code is "new InternalError(msg) + initCause()", in which >> case it has the >> clear intention that implementation does want to expose the original >> cause of >> this InternalError. But for the case of InternalError(msg) only, the >> proposed change >> actually again changes the behavior/intention of the original code, >> in which it might >> not be desirable to expose the original cause when throw the >> InternalError. As >> suggested in the Throwable API doc, the "hiding" might be purposely, >> to separate >> different levels of abstraction when throw the InternalError. > Two comments on this: > 1. You maybe haven't noticed it. "new > InternalError(msg).initCause()" is handled in a previous patch > http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c43af666d130 > > 2. You share this opinion with Xuelei.Fan. I think exactly the > other way around. That > maybe comes from my application development background where > intensive logging > and long stacktraces are the only information basis you got in > production code. > The only reason i see to be carefully with long > exception-chains is GC and serialization/transfer-costs > as i have written in > > http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-August/007562.html > I will not say that Alan is supporting this meaning but he > somewhat followed the idea in his follow-up. > > I think we should think about it and get some more general policy when > to chain and when not and document it > in Throwable javadoc more clearly. I cannot find the place in > Throwable API you mentioned about hiding. > >> -Sherman > -- Sebastian From xueming.shen at oracle.com Tue Aug 30 10:20:49 2011 From: xueming.shen at oracle.com (Xueming Shen) Date: Tue, 30 Aug 2011 10:20:49 -0700 Subject: Request for review: 7084245: Update usages of InternalError to use exception chaining In-Reply-To: <4E5C9E1B.4070800@gmx.de> References: <4E5A989E.8070103@gmx.de> <4E5BE41A.8050000@oracle.com> <4E5C9D59.3030202@gmx.de> <4E5C9E1B.4070800@gmx.de> Message-ID: <4E5D1BF1.3010602@oracle.com> Hi Sebastian, On 08/30/2011 01:23 AM, Sebastian Sickelmann wrote: > Sorry i have forgotten the webrev url. > > http://oss-patches.24.eu/openjdk8/InternalError/part2/7084245_main_1/ > >> >>> with couple changes from your original patch. >>> >>> (1) Undo the changes in DecimalFormat.java and Format.java. >>> while arguably your suggested change might be the >>> correct/better one for >>> the situation, but it's a behavior change, personally I don't >>> think you want >>> to change the behavior, whether it is a "better" solution (not >>> just look better) >>> or "bug fix", in this kind of clean-up project. Leave that to >>> separate "bug fix" >>> patch, if you believe the existing code is buggy/wrong. >> Not changing this at all is not the intention of this. Even if the >> CloneNotSupportedException >> cannot be thrown, chaining is what can be done to make it more clear >> what happend. >> I don't think that i changed behavoir that much: >> - Returning null in Format will mostly (if not always) result in >> NullPointerException in >> the extending class. >> - DecimalFormat is the only class in jdk i found that makes it >> "correct" and catch it and throw >> an InternalError. >> If i think about how the catch in DecimalFormat maybe come into >> the codebase it must >> be that Format.clone must somehow returned null in the past. Which >> is a bizarre case, >> because it cannot happen cause Format is cloneable. >> We now started to "discuss" whether or not the original code is correct or not, and if not, how to fix it. This is exactly the reason why I think this kind of "cleanup" project might not want to get involved in, especially if it involves behavior change. Get that done separately if you are interested to correct that wrong behavior. In this particular case, the "null return" obviously "never" really happens, I agree it's fine to do so. >>> Personally I think it's nice to make the switch to the new chaining >>> version if the >>> original code is "new InternalError(msg) + initCause()", in which >>> case it has the >>> clear intention that implementation does want to expose the original >>> cause of >>> this InternalError. But for the case of InternalError(msg) only, the >>> proposed change >>> actually again changes the behavior/intention of the original code, >>> in which it might >>> not be desirable to expose the original cause when throw the >>> InternalError. As >>> suggested in the Throwable API doc, the "hiding" might be purposely, >>> to separate >>> different levels of abstraction when throw the InternalError. >> >> Two comments on this: >> 1. You maybe haven't noticed it. "new >> InternalError(msg).initCause()" is handled in a previous patch >> http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c43af666d130 >> >> 2. You share this opinion with Xuelei.Fan. I think exactly the >> other way around. That >> maybe comes from my application development background where >> intensive logging >> and long stacktraces are the only information basis you got in >> production code. >> The only reason i see to be carefully with long >> exception-chains is GC and serialization/transfer-costs >> as i have written in >> >> http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-August/007562.html >> I will not say that Alan is supporting this meaning but he >> somewhat followed the idea in his follow-up. Again, I'm not talking about which approach is correct, which one is wrong. I would leave that to the owner of that particular area to decide, whether including the initial cause is desired. Generally I would assume if it is desired, then they can/should do so with initCause() at first place (then, as I said, it's nice to make the switch to the new chaining version, in this cleanup project). There are probably three possibilities why they did use initCause() at first place (1) the original owner did not think the initial cause should be included (2) even it should, since it doesn't matter, they did not include it (3) initCause() didn't even exist when the original code was written. Personally I think you can only do so if it's (2) or (3) in a cleanup project. Given initCause() was added in 1.4, I would "assume/guess" most of them are because of (3). and actually I believe most of them also belong to "doesn't really matter" category. That said, since 2d/awt, Xuelei.Fan have approved the changes in their areas, and Alan have reviewed the changes as well (in which I would assume the core/lib area has been covered). I will push the latest changes into the tl repository. -Sherman