[ https://issues.apache.org/jira/browse/GROOVY-7941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15511026#comment-15511026 ]
ASF GitHub Bot commented on GROOVY-7941: ---------------------------------------- Github user asfgit closed the pull request at: https://github.com/apache/groovy/pull/426 > MissingMethodException should limit argument types in getMessage() > ------------------------------------------------------------------ > > Key: GROOVY-7941 > URL: https://issues.apache.org/jira/browse/GROOVY-7941 > Project: Groovy > Issue Type: Improvement > Components: groovy-jdk > Affects Versions: 2.4.7 > Environment: All Environments > Reporter: Vlad Shtibin > Priority: Trivial > Attachments: add_missing_method_limit.patch > > > The getMessage() method in MissingMethodException uses > InvokerHelper.toTypeString(Object[] arguments) to generate the types of each > argument. When this exception occurs with a large parameter list this can > create a very large String. The format method which is used 2 lines later to > print the values uses a 40 character limit, I'd like to propose to use > similar logic for the types as well. > Here is a trivial code snippet from groovysh - this log message can grow > unbounded: > {code} > groovy:000> missing(*("Test".getBytes())) > ERROR groovy.lang.MissingMethodException: > No signature of method: groovysh_evaluate.missing() is applicable for > argument types: (java.lang.Byte, java.lang.Byte, java.lang.Byte, > java.lang.Byte) values: [84, 101, 115, 116] > Possible solutions: toString(), toString() > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)