[ 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)