Java 7 update 12 issue with MethodHandles.catchException.
Finally got time to try running our full application under 7u12 and I've hit a problem with our database library. In two cases where we are combining method handles to catch exceptions from a library method, process those exceptions to fill in our own error information and then fallback to the proper error handling code, we are failing to be bind properly. The failure occurs with methods with 9 or more arguments where the last one is an array. I've attached a minimal test case which works under update 10 but fails under update 12 (all tests on Windows x64) and shows the difference in behaviour with the number of args. MethodHandleBug.java Description: MethodHandleBug.java ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
Re: Java 7 update 12 issue with MethodHandles.catchException.
Do you see the same failure with 8 (to rule out differences between 7u12 and 8)? -- Chris On Dec 12, 2012, at 7:12 AM, MacGregor, Duncan (GE Energy Management) duncan.macgre...@ge.com wrote: Finally got time to try running our full application under 7u12 and I've hit a problem with our database library. In two cases where we are combining method handles to catch exceptions from a library method, process those exceptions to fill in our own error information and then fallback to the proper error handling code, we are failing to be bind properly. The failure occurs with methods with 9 or more arguments where the last one is an array. I've attached a minimal test case which works under update 10 but fails under update 12 (all tests on Windows x64) and shows the difference in behaviour with the number of args. MethodHandleBug.java ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
Re: Java 7 update 12 issue with MethodHandles.catchException.
I do see the failure with 8 as well. On 12/12/2012 17:31, Christian Thalinger christian.thalin...@oracle.com wrote: Do you see the same failure with 8 (to rule out differences between 7u12 and 8)? -- Chris On Dec 12, 2012, at 7:12 AM, MacGregor, Duncan (GE Energy Management) duncan.macgre...@ge.com wrote: Finally got time to try running our full application under 7u12 and I've hit a problem with our database library. In two cases where we are combining method handles to catch exceptions from a library method, process those exceptions to fill in our own error information and then fallback to the proper error handling code, we are failing to be bind properly. The failure occurs with methods with 9 or more arguments where the last one is an array. I've attached a minimal test case which works under update 10 but fails under update 12 (all tests on Windows x64) and shows the difference in behaviour with the number of args. MethodHandleBug.java ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev ___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
Re: Java 7 update 12 issue with MethodHandles.catchException.
On Dec 12, 2012, at 11:33 AM, Christian Thalinger wrote: That helps. I can't recall code that has a 8 argument limitation and does something else with 9+. Maybe John has an idea. The bug is probably in GuardWithCatch.invoke_V, in this file: http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/tip/src/share/classes/java/lang/invoke/MethodHandleImpl.java I'll look into it. — John___ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev