[ https://issues.apache.org/jira/browse/IGNITE-19534?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17728204#comment-17728204 ]
Pavel Tupitsyn commented on IGNITE-19534: ----------------------------------------- [~slava.koptilin] looks good to me. > Duplicating error code in the message. > -------------------------------------- > > Key: IGNITE-19534 > URL: https://issues.apache.org/jira/browse/IGNITE-19534 > Project: Ignite > Issue Type: Bug > Reporter: Vyacheslav Koptilin > Assignee: Vyacheslav Koptilin > Priority: Major > Labels: iep-84, ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 50m > Remaining Estimate: 0h > > Error code can be duplicated in the message as follows: > {code:java} > org.apache.ignite.sql.SqlException: IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 > at > java.base@11.0.17/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > java.base@11.0.17/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > java.base@11.0.17/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at > java.base@11.0.17/java.lang.reflect.Constructor.newInstance(Constructor.java:490) > at > app//org.apache.ignite.lang.IgniteException.wrap(IgniteException.java:276) > at app//org.apache.ignite.sql.Session.execute(Session.java:60) > at > app//org.apache.ignite.internal.sqllogic.ScriptContext.executeQuery(ScriptContext.java:89) > at > app//org.apache.ignite.internal.sqllogic.Statement.execute(Statement.java:108) > ... 7 more > Caused by: org.apache.ignite.sql.SqlException: IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 > ... > ... 3 more > Caused by: org.apache.ignite.sql.SqlException: IGN-SQL-20 > TraceId:8c53228d-6463-4dec-8ef6-7f7a19baab49 > at > app//org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl.convertDdlException(ExecutionServiceImpl.java:311) > at > app//org.apache.ignite.internal.sql.engine.exec.ExecutionServiceImpl.lambda$executeDdl$8(ExecutionServiceImpl.java:289) > ... 12 more > Caused by: java.util.concurrent.TimeoutException > ... 8 more > {code} > -It seems to me, this behavior is caused by `IgniteException.wrap`.- > -By the way, this method is a good candidate to be moved to `ExceptionUtils` > along with `IgniteException.getIgniteErrorCode()`.- > It seems to me, that the real cause of the issue is that `IgniteException` > extends the user-provided message with an error code and trace id, but this > behavior contradicts the implementation of Throwable: > - the user-defined message should not be changed in any way, and > `getMessage()` should return exactly the same message. > - any additional information is included by `toString()` implementation > (such as adding FQCN, error code, and traceId) -- This message was sent by Atlassian Jira (v8.20.10#820010)