[
https://issues.apache.org/jira/browse/IGNITE-18470?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sergey Uttsel reassigned IGNITE-18470:
--------------------------------------
Assignee: Sergey Uttsel
> Exception handling for DistributionZoneManager in DdlCommandHandler.
> --------------------------------------------------------------------
>
> Key: IGNITE-18470
> URL: https://issues.apache.org/jira/browse/IGNITE-18470
> Project: Ignite
> Issue Type: Improvement
> Reporter: Sergey Uttsel
> Assignee: Sergey Uttsel
> Priority: Major
> Labels: ignite-3
>
> h3. Motivation
> Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException
> and DistributionZoneNotFoundException incorrectly because it wrapped into
> ConfigurationChangeException. Seems that they are wrapped because they are
> checked exceptions. There are no tests for it.
> Also methods of DistributionZoneManager throw other exceptions.
> DistributionZoneManager#createZone:
> # return future which is completed with ConfigurationChangeException (caused
> by DistributionZoneAlreadyExistsException and
> DistributionZoneNotFoundException)
> # throws NullPointerException if the parameter of method is null.
> # NodeStoppingException If the node is stopping.
> DistributionZoneManager#dropZone:
> # return future which is completed with ConfigurationChangeException (caused
> by DistributionZoneNotFoundException)
> # throws NullPointerException if the parameter of method is null.
> # NodeStoppingException If the node is stopping.
> DistributionZoneManager#alterZone also throws these exception, but it is not
> used in DdlCommandHandler now.
> h3. Definition of Done
> DdlCommandHandler handles all exception produced by methods of
> DistributionZoneManager.
> h3. Implementation notes
> # createZone, alterZone, dropZone must don't wrap NodeStoppingException.
> # Need to check if we can unwrap DistributionZoneAlreadyExistsException and
> DistributionZoneNotFoundException from ConfigurationChangeException.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)