Vadim Pakhnushev created IGNITE-20140:
-----------------------------------------
Summary: Exceptions derived from IgniteException are constructed
unexpectedly while copying
Key: IGNITE-20140
URL: https://issues.apache.org/jira/browse/IGNITE-20140
Project: Ignite
Issue Type: Bug
Reporter: Vadim Pakhnushev
Assignee: Vyacheslav Koptilin
When exception derived from IgniteException is thrown from the SQL command,
{{org.apache.ignite.internal.sql.engine.AsyncSqlCursorImpl#requestNextAsync}}
wraps it using the
{{{}org.apache.ignite.lang.IgniteExceptionUtils#copyExceptionWithCause{}}},
which tries to find corresponding constructor in the derived class.
The problem is that when the exception has a custom constructor with the
matching signature, for instance, with the single String argument, it gets
called with the original exception message leading to duplicated messages if
the custom constructor constructs a message from its argument.
It the exception class doesn't have matching constructor, the original
exception gets lots because the handler in the {{requestNextAsync}} throws a
{{{}null{}}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)