Sergey Uttsel created IGNITE-18470:
--------------------------------------

             Summary: 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


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)

Reply via email to