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

Ryabov Dmitrii commented on IGNITE-602:
---------------------------------------

[~agura], the main idea is to call GridToStringBuilder.toString(...) inside of 
GridToStringBuilder.toString(...) instead of obj.toString() method. It is the 
only way to prevent infinite loops of toString() inside of toString() which are 
uncontolled by GridToStringBuilder.

I made some changes, so your example works too. Can you look it?

> [Test] GridToStringBuilder is vulnerable for StackOverflowError caused by 
> infinite recursion
> --------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-602
>                 URL: https://issues.apache.org/jira/browse/IGNITE-602
>             Project: Ignite
>          Issue Type: Bug
>          Components: general
>            Reporter: Artem Shutak
>            Assignee: Ryabov Dmitrii
>              Labels: Muted_test
>             Fix For: 2.1
>
>
> See test 
> org.gridgain.grid.util.tostring.GridToStringBuilderSelfTest#_testToStringCheckAdvancedRecursionPrevention
>  and related TODO in same source file.
> Also take a look at 
> http://stackoverflow.com/questions/11300203/most-efficient-way-to-prevent-an-infinite-recursion-in-tostring
> Test should be unmuted on TC after fix.
> see GG-5000.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to