groovy-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GROOVY-8324) Enabling groovy.indy.logging can lead to stack overflows
Date Fri, 22 Sep 2017 18:37:00 GMT

    [ 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 <mwhipple@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)

Mime
View raw message