Re: 3rc2 regression?

2019-12-15 Thread Daniel.Sun
> Another weird line is the reader which uses a writer config Yep. I tried to fix the bytecode issues in the past: https://github.com/apache/groovy/pull/1103 But the PR was not accepted. Also, I have not much spare time to continue, so leave it as it is... Cheers, Daniel.Sun - Apache

Re: 3rc2 regression?

2019-12-15 Thread Romain Manni-Bucau
Thought it is buggy too but it fixes the issue - maybe throwing the exception, I didnt check much. Another weird line is the reader which uses a writer config ( https://github.com/groovy/groovy-core/blob/master/src/main/org/codehaus/groovy/runtime/callsite/GroovySunClassLoader.java#L69 ). In any

Re: 3rc2 regression?

2019-12-15 Thread Daniel.Sun
I think the original code has bugs... The hardcoded `4` can not match any valid ASM API version, so `IllegalArgumentException` will be thrown. int ASM4 = 4 << 16 | 0 << 8; int ASM5 = 5 << 16 | 0 << 8; int ASM6 = 6 << 16 | 0 << 8; int ASM7 = 7 << 16 | 0 << 8; 4 == ASM7 || 4 == ASM6 || 4 == ASM5

Re: 3rc2 regression?

2019-12-14 Thread Romain Manni-Bucau
Have to admit I'd still fix it in groovy since it "feels" like a regression. What about dropping ASM_API_VERSION in favor of "4" in org.codehaus.groovy.runtime.callsite.GroovySunClassLoader#loadAbstract ? Romain Manni-Bucau @rmannibucau | Blog

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
My pleasure. This should be a JVM 8 bug, which is triggered by groovy 3.0.0 rc-2. Maybe we have to submit the bug to OpenJDK team ;-) Cheers, Daniel.Sun - Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun -- Sent from:

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
I managed to disable the verify:none option (it seems no more needed on the build now jruby fixed some issues and got upgraded) but can be neat to fix this issue for the rc3 or GA. Thanks for having a look so fast! Romain Manni-Bucau @rmannibucau | Blog

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
I tried to add `-Xverify:none` to groovy test build. As the result shows, Oracle JDK 1.8.0_151 seems to work: https://travis-ci.org/danielsun1106/groovy/jobs/624550691 This could be the only workaround for the JVM bug so far... Cheers, Daniel.Sun - Apache Groovy committer & PMC member

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
https://github.com/danielsun1106/groovy/runs/347173227 JRE version: OpenJDK Runtime Environment (Zulu 8.42.0.23-CA-linux64) (8.0_232-b18) (build 1.8.0_232-b18) crashed too... Cheers, Daniel.Sun - Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
I'm not yet sure it is a JVM bug or a groovy generated bytecode bug. Concretely rc1 was working fine with verify:none so some change in rc2 triggered that probably. Romain Manni-Bucau @rmannibucau | Blog | Old Blog

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
Here is the error log: hs_err_pid21040.log Cheers, Daniel.Sun - Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun -- Sent from:

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
I tried zulu JDK 1.8.0_232, JVM crashed too... I think you find a bug of JVM ;-) P.S. the code runs well if no `-Xverify:none` applied. D:\_TEMP\>java -version openjdk version "1.8.0_232" OpenJDK Runtime Environment (Zulu 8.42.0.23-CA-win64) (build 1.8.0_232-b18) OpenJDK 64-Bit Server VM

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
I tried my local JDK 1.8.0_222(Corretto) with your code, JVM crashed.. Let me download zulu JDK 1.8 and have a try... hs_err_pid19328.log D:\_TEMP\>groovy -v Groovy Version: 3.0.0-rc-2 JVM: 1.8.0_222 Vendor: Amazon.com

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
Let me have a try ;-) Cheers, Daniel.Sun - Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun -- Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
Can you try on java 8 (Azul 1.8 202 in my case, it is available at https://cdn.azul.com/zulu/bin/) please? FYI using azul 11 works for me too so it is likely linked to the JVM version Romain Manni-Bucau @rmannibucau | Blog |

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
I can not reproduce the issue through your code( No error occurred as follows )... ``` D:\_TEMP\>groovy -v Groovy Version: 3.0.0-rc-2 JVM: 11.0.3 Vendor: Amazon.com Inc. OS: Windows 10 D:\_TEMP\>java -Xverify:none -jar D:\_DEV\Groovy\groovy\lib\groovy-3.0.0-rc-2.jar -e="new

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
exactly, simple reproducer: java -Xverify:none -jar ~/.m2/repository/org/codehaus/groovy/groovy/3.0.0-rc-2/groovy-3.0.0-rc-2.jar -e="new File('.').toPath()" Romain Manni-Bucau @rmannibucau | Blog | Old Blog

Re: 3rc2 regression?

2019-12-13 Thread Daniel.Sun
> the jvm uses -Xverify:none (for jruby/asciidoctor), this lead to the issue That says, if `-Xverify:none` is removed, the issue is gone? Cheers, Daniel.Sun - Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun -- Sent from:

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
...just need to send a mail to find the cause the jvm uses -Xverify:none (for jruby/asciidoctor), this lead to the issue Romain Manni-Bucau @rmannibucau | Blog | Old Blog | Github

Re: 3rc2 regression?

2019-12-13 Thread Romain Manni-Bucau
Hi Daniel, Wonder if it can be the VMPlugin which fails - it is silent when java 9/8 does not load and java 7. Weird thing is I have the same JVM locally (Java version: 1.8.0_202, vendor: Azul Systems, Inc.) and build passes. The failing constructor call is: public

Re: 3rc2 regression?

2019-12-12 Thread Daniel.Sun
Also, `ArrayIndexOutOfBoundsException` should be able to be caught by the try-catch block and ignored, but it is thrown as your stack trace shown... It's hard to address the issue by looking into the error log... ``` try { return (CallSite)

Re: 3rc2 regression?

2019-12-12 Thread Daniel.Sun
I find a static field in PojoMetaMethodSite class, it will be initialized in "", but no subscript operation found either... https://github.com/apache/groovy/blob/GROOVY_3_0_0_RC_2/src/main/java/org/codehaus/groovy/runtime/callsite/PojoMetaMethodSite.java#L40 Cheers, Daniel.Sun - Apache

Re: 3rc2 regression?

2019-12-12 Thread Daniel.Sun
Hi Romain, Could you provide us a standalone runnable code sample? BTW, I find the root cause is `ArrayIndexOutOfBoundsException` thrown in `PojoMetaMethodSite.`, but it is weird that no `static { ... }` in the `PojoMetaMethodSite` source code (