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

Andrey Mashenkov updated IGNITE-15598:
--------------------------------------
    Summary: TableManager handles exceptions in incorrect way.  (was: 
Configuration exception handling.)

> TableManager handles exceptions in incorrect way.
> -------------------------------------------------
>
>                 Key: IGNITE-15598
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15598
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 3.0.0-alpha2
>            Reporter: Andrey Mashenkov
>            Priority: Major
>              Labels: ignite-3
>         Attachments: stacktrace
>
>
> IgniteTable method may throw exceptions in case of incorrect table 
> configuration.
> These exceptions must be public classes. 
> The first issue here is we use future.join() that wrap exceptions into 
> CompletionException. 
> I think we must unwrap it to Ignite public exception (e.g. to smth like 
> TransactionalException, ConfigurationException, or IgniteException)
> The second issue, exception of internal class thrown instead and an original 
> exception is hidden into the deep.
> Now, the configuration component may throw ConfigurationValidationException, 
> which is a public one, but it is wrapped into an internal exception 
> ListenerRemovedException.
> So, the context is lost, and such exceptions are hardly unwrapped.
> PFA stacktrace.
> Reproducer is available in PR for ignite-15414.



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

Reply via email to