[ 
https://issues.apache.org/jira/browse/IGNITE-22569?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Tupitsyn updated IGNITE-22569:
------------------------------------
    Description: 
*ClientSqlExecuteBatchRequest* uses custom error serialization. We can't rely 
on the top-level handler in 
[ClientInboundMessageHandler|https://github.com/apache/ignite-3/blob/d3ab33124127dd18f36727148100d632fffbd02e/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java#L498]
 because we need to send update counter even in case of an error.

* Stack trace is missing when *SendServerExceptionStackTraceToClient* is true
* The code is duplicated

Reuse the code and ensure consistent error serialization.

We should use `ErrorExtensions` mechanism to transfer additional information 
for specific exception types

  was:
*ClientSqlExecuteBatchRequest* uses custom error serialization. We can't rely 
on the top-level handler in 
[ClientInboundMessageHandler|https://github.com/apache/ignite-3/blob/d3ab33124127dd18f36727148100d632fffbd02e/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java#L498]
 because we need to send update counter even in case of an error.

* Stack trace is missing when *SendServerExceptionStackTraceToClient* is true
* The code is duplicated

Reuse the code and ensure consistent error serialization.


> Ensure standardized error serialization in ClientSqlExecuteBatchRequest
> -----------------------------------------------------------------------
>
>                 Key: IGNITE-22569
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22569
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>    Affects Versions: 3.0.0-beta1
>            Reporter: Pavel Tupitsyn
>            Assignee: Pavel Tupitsyn
>            Priority: Blocker
>              Labels: ignite-3
>             Fix For: 3.0.0-beta2
>
>
> *ClientSqlExecuteBatchRequest* uses custom error serialization. We can't rely 
> on the top-level handler in 
> [ClientInboundMessageHandler|https://github.com/apache/ignite-3/blob/d3ab33124127dd18f36727148100d632fffbd02e/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientInboundMessageHandler.java#L498]
>  because we need to send update counter even in case of an error.
> * Stack trace is missing when *SendServerExceptionStackTraceToClient* is true
> * The code is duplicated
> Reuse the code and ensure consistent error serialization.
> We should use `ErrorExtensions` mechanism to transfer additional information 
> for specific exception types



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to