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 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-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 case it tends to show that the bug is likely on groovy side would
misload some class.

Romain Manni-Bucau
@rmannibucau  |  Blog
 | Old Blog
 | Github  |
LinkedIn  | Book



Le lun. 16 déc. 2019 à 04:19, Daniel.Sun  a écrit :

> 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 || 4 == ASM4  // yields `false`
>
>
>   /**
>* Constructs a new {@link ClassVisitor}.
>*
>* @param api the ASM API version implemented by this visitor. Must be
> one
> of {@link
>* Opcodes#ASM4}, {@link Opcodes#ASM5}, {@link Opcodes#ASM6} or
> {@link
> Opcodes#ASM7}.
>* @param classVisitor the class visitor to which this visitor must
> delegate method calls. May be
>* null.
>*/
>   public ClassVisitor(final int api, final ClassVisitor classVisitor) {
> if (api != Opcodes.ASM7 && api != Opcodes.ASM6 && api != Opcodes.ASM5
> &&
> api != Opcodes.ASM4) {
>   throw new IllegalArgumentException("Unsupported api " + api);
> }
> this.api = api;
> this.cv = classVisitor;
>   }
>
> 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-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 || 4 == ASM4  // yields `false`


  /**
   * Constructs a new {@link ClassVisitor}.
   *
   * @param api the ASM API version implemented by this visitor. Must be one
of {@link
   * Opcodes#ASM4}, {@link Opcodes#ASM5}, {@link Opcodes#ASM6} or {@link
Opcodes#ASM7}.
   * @param classVisitor the class visitor to which this visitor must
delegate method calls. May be
   * null.
   */
  public ClassVisitor(final int api, final ClassVisitor classVisitor) {
if (api != Opcodes.ASM7 && api != Opcodes.ASM6 && api != Opcodes.ASM5 &&
api != Opcodes.ASM4) {
  throw new IllegalArgumentException("Unsupported api " + api);
}
this.api = api;
this.cv = classVisitor;
  }

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-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
 | Old Blog
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 19:54, Daniel.Sun  a écrit :

> 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: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html
>


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: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html


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
 | Old Blog
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 18:04, Daniel.Sun  a écrit :

> 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
> 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 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 
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 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 

--
Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html


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
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 11:43, Daniel.Sun  a écrit :

> 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 (Zulu 8.42.0.23-CA-win64) (build 25.232-b18, mixed
> mode)
>
> D:\_TEMP\>java -Xverify:none -jar
> D:\_DEV\Groovy\groovy\lib\groovy-3.0.0-rc-2.jar -e="new File('.').toPath()"
> === DEBUG MESSAGE: unimplemented bytecode 
>
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> #  EXCEPTION_PRIV_INSTRUCTION (0xc096) at pc=0x034d5776,
> pid=21040, tid=0x24cc
> #
> # JRE version: OpenJDK Runtime Environment (Zulu 8.42.0.23-CA-win64)
> (8.0_232-b18) (build 1.8.0_232-b18)
> # Java VM: OpenJDK 64-Bit Server VM (25.232-b18 mixed mode windows-amd64
> compressed oops)
> # Problematic frame:
> # j  org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.()V+0
> #
> # Failed to write core dump. Minidumps are not enabled by default on client
> versions of Windows
> #
> # An error report file with more information is saved as:
> # D:\_TEMP\\hs_err_pid21040.log
> #
> # If you would like to submit a bug report, please visit:
> #   http://www.azulsystems.com/support/
> #
>
> D:\_TEMP\>
> D:\_TEMP\>
>
>
> 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 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: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html


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 (Zulu 8.42.0.23-CA-win64) (build 25.232-b18, mixed
mode)

D:\_TEMP\>java -Xverify:none -jar
D:\_DEV\Groovy\groovy\lib\groovy-3.0.0-rc-2.jar -e="new File('.').toPath()"
=== DEBUG MESSAGE: unimplemented bytecode 

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_PRIV_INSTRUCTION (0xc096) at pc=0x034d5776,
pid=21040, tid=0x24cc
#
# JRE version: OpenJDK Runtime Environment (Zulu 8.42.0.23-CA-win64)
(8.0_232-b18) (build 1.8.0_232-b18)
# Java VM: OpenJDK 64-Bit Server VM (25.232-b18 mixed mode windows-amd64
compressed oops)
# Problematic frame:
# j  org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.()V+0
#
# Failed to write core dump. Minidumps are not enabled by default on client
versions of Windows
#
# An error report file with more information is saved as:
# D:\_TEMP\\hs_err_pid21040.log
#
# If you would like to submit a bug report, please visit:
#   http://www.azulsystems.com/support/
#

D:\_TEMP\>
D:\_TEMP\>


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 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 Inc. OS:
Windows 10

D:\_TEMP\>java -Xverify:none -jar
D:\_DEV\Groovy\groovy\lib\groovy-3.0.0-rc-2.jar -e="println new
File('.').toPath()"
=== DEBUG MESSAGE: illegal bytecode sequence - method not
verified 

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_PRIV_INSTRUCTION (0xc096) at pc=0x032056ed,
pid=19328, tid=0x57d4
#
# JRE version: OpenJDK Runtime Environment (8.0_222-b10) (build
1.8.0_222-b10)
# Java VM: OpenJDK 64-Bit Server VM (25.222-b10 mixed mode windows-amd64
compressed oops)
# Problematic frame:
# j 
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.()V+-1034620128
#
# Failed to write core dump. Minidumps are not enabled by default on client
versions of Windows
#
# An error report file with more information is saved as:
# D:\_TEMP\\hs_err_pid19328.log
#
# If you would like to submit a bug report, please visit:
#
#

D:\_TEMP\>
D:\_TEMP\>


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 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
 | Old Blog
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 10:35, Daniel.Sun  a écrit :

> 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 File('.').toPath()"
>
> D:\_TEMP\>
> D:\_TEMP\>
> ```
>
>
> 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 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 File('.').toPath()"

D:\_TEMP\>
D:\_TEMP\>
```


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
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
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 09:55, Daniel.Sun  a écrit :

> > 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: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html
>


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: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html


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  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 09:39, Romain Manni-Bucau  a
écrit :

> 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
> java_io_File$toPath(org.codehaus.groovy.runtime.callsite.CallSite,groovy.lang.MetaClassImpl,groovy.lang.MetaMethod,java.lang.Class[],java.lang.reflect.Constructor)
>
> Romain Manni-Bucau
> @rmannibucau  |  Blog
>  | Old Blog
>  | Github
>  | LinkedIn
>  | Book
> 
>
>
> Le ven. 13 déc. 2019 à 08:24, Daniel.Sun  a écrit :
>
>> 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) constr.newInstance(site, metaClass,
>> this, params, constr);
>> } catch (Error e) {
>> skipCompiled=true;
>> throw e;
>> } catch (Throwable e) {
>> skipCompiled=true;
>> }
>> ```
>> (
>>
>> https://github.com/apache/groovy/blob/GROOVY_3_0_0_RC_2/src/main/java/org/codehaus/groovy/reflection/CachedMethod.java#L295-L302
>> )
>>
>>
>> Caused by: java.lang.ArrayIndexOutOfBoundsException: -844304512
>> at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.
>> (PojoMetaMethodSite.java)
>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native
>> Method)
>> at sun.reflect.NativeConstructorAccessorImpl.newInstance
>> (NativeConstructorAccessorImpl.java:62)
>> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
>> (DelegatingConstructorAccessorImpl.java:45)
>> at java.lang.reflect.Constructor.newInstance (Constructor.java:423)
>> at
>> org.codehaus.groovy.reflection.CachedMethod.createPojoMetaMethodSite
>> (CachedMethod.java:296)
>>
>> 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
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
java_io_File$toPath(org.codehaus.groovy.runtime.callsite.CallSite,groovy.lang.MetaClassImpl,groovy.lang.MetaMethod,java.lang.Class[],java.lang.reflect.Constructor)

Romain Manni-Bucau
@rmannibucau  |  Blog
 | Old Blog
 | Github  |
LinkedIn  | Book



Le ven. 13 déc. 2019 à 08:24, Daniel.Sun  a écrit :

> 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) constr.newInstance(site, metaClass,
> this, params, constr);
> } catch (Error e) {
> skipCompiled=true;
> throw e;
> } catch (Throwable e) {
> skipCompiled=true;
> }
> ```
> (
>
> https://github.com/apache/groovy/blob/GROOVY_3_0_0_RC_2/src/main/java/org/codehaus/groovy/reflection/CachedMethod.java#L295-L302
> )
>
>
> Caused by: java.lang.ArrayIndexOutOfBoundsException: -844304512
> at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.
> (PojoMetaMethodSite.java)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native
> Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance
> (NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
> (DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance (Constructor.java:423)
> at org.codehaus.groovy.reflection.CachedMethod.createPojoMetaMethodSite
> (CachedMethod.java:296)
>
> 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-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) constr.newInstance(site, metaClass,
this, params, constr);
} catch (Error e) {
skipCompiled=true;
throw e;
} catch (Throwable e) {
skipCompiled=true;
}
```
(
https://github.com/apache/groovy/blob/GROOVY_3_0_0_RC_2/src/main/java/org/codehaus/groovy/reflection/CachedMethod.java#L295-L302
)


Caused by: java.lang.ArrayIndexOutOfBoundsException: -844304512
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.
(PojoMetaMethodSite.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native
Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance
(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance (Constructor.java:423)
at org.codehaus.groovy.reflection.CachedMethod.createPojoMetaMethodSite
(CachedMethod.java:296)

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-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 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-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 ( 
)https://github.com/apache/groovy/blob/GROOVY_3_0_0_RC_2/src/main/java/org/codehaus/groovy/runtime/callsite/PojoMetaMethodSite.java

Caused by: java.lang.ArrayIndexOutOfBoundsException: -844304512
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.
(PojoMetaMethodSite.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native
Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance
(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance (Constructor.java:423)
at org.codehaus.groovy.reflection.CachedMethod.createPojoMetaMethodSite
(CachedMethod.java:296)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.createCachedMethodSite
(PojoMetaMethodSite.java:162)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.createPojoMetaMethodSite
(PojoMetaMethodSite.java:151)
at groovy.lang.MetaClassImpl.createPojoCallSite
(MetaClassImpl.java:3476)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createPojoSite
(CallSiteArray.java:123)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite
(CallSiteArray.java:160)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall
(CallSiteArray.java:47)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
(AbstractCallSite.java:115)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call
(AbstractCallSite.java:119)
at
org.talend.sdk.component.build.documentation.sample.Bundles$_run_closure1.doCall
(Bundles.groovy:100)

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