[ 
https://issues.apache.org/jira/browse/GROOVY-8324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16176907#comment-16176907
 ] 

ASF GitHub Bot commented on GROOVY-8324:
----------------------------------------

GitHub user mwhipple opened a pull request:

    https://github.com/apache/groovy/pull/604

    GROOVY-8324: Skip logging 'this' argument in IndyInterface

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/mwhipple/groovy GROOVY-8324

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/groovy/pull/604.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #604
    
----
commit c153a7220c76e814dd562faeb4d41f3975879dec
Author: Matt Whipple <mwhip...@brightcove.com>
Date:   2017-09-22T18:34:10Z

    GROOVY-8324: Skip logging 'this' argument in IndyInterface

----


> Enabling groovy.indy.logging can lead to stack overflows
> --------------------------------------------------------
>
>                 Key: GROOVY-8324
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8324
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 2.4.12
>            Reporter: Matt Whipple
>            Priority: Minor
>              Labels: invokedynamic
>
> Still digging through this a bit more, but while trying to diagnose 
> performance issues I enabled indy logging which led to:
> {noformat}
> ! Caused by: java.lang.StackOverflowError: null
> ! at java.lang.Class.getEnclosingMethodInfo(Class.java:1072)
> ! at java.lang.Class.getEnclosingClass(Class.java:1272)
> ! at java.lang.Class.getSimpleBinaryName(Class.java:1443)
> ! at java.lang.Class.getSimpleName(Class.java:1309)
> ! at java.lang.invoke.MethodType.toString(MethodType.java:797)
> ! at java.lang.String.valueOf(String.java:2982)                        <--- 
> Loops back to here
> ! at java.lang.StringBuilder.append(StringBuilder.java:131)
> ! at 
> org.codehaus.groovy.vmplugin.v7.Selector$MethodSelector.<init>(Selector.java:488)
> ! at org.codehaus.groovy.vmplugin.v7.Selector.getSelector(Selector.java:98)
> ! at 
> org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:227)
> ! at MyDomainClass.toString(MyDomainClass.groovy)
> {noformat}
> The domain class itself stringifies without issue, changing the class to use 
> {{@CompileStatic}} seems to have resolved this issue. It might be nice if 
> that specific log message could be toggled independently of the others to try 
> to avoid the possibility of blowing up while attempting to troubleshooting. 
> {noformat}
> java version "1.8.0_45"
> Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
> Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to