Eduard Rakhmankulov created IGNITE-15716:
--------------------------------------------

             Summary: Fix StackOverflowError in case if exception suppressed 
with itself
                 Key: IGNITE-15716
                 URL: https://issues.apache.org/jira/browse/IGNITE-15716
             Project: Ignite
          Issue Type: Bug
            Reporter: Eduard Rakhmankulov
            Assignee: Eduard Rakhmankulov


We can get infinite loop in org.apache.ignite.internal.util.typedef.X#hasCause 
in case if exception is suppressed with itself.
Example

 

{{Exception e = new Exception("foo");
Exception e2 = new Exception(e);
e.addSuppressed(e2)}}

Stack:

 

{{java.lang.StackOverflowError: null
        at org.apache.ignite.internal.util.typedef.X.hasCause(X.java:476)
        at org.apache.ignite.internal.util.typedef.X.hasCause(X.java:489)
        at org.apache.ignite.internal.util.typedef.X.hasCause(X.java:489)
        at org.apache.ignite.internal.util.typedef.X.hasCause(X.java:489)       
}}

Also it’s going to be prefect to investigate if there any places where we can 
suppress the same exception.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to