[ https://issues.apache.org/jira/browse/IGNITE-12225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Antonov updated IGNITE-12225: ------------------------------------ Description: We have 3 cluster states at the moment: inactive, active, read-only. For getting current cluster state and changing them {{IgniteCluster}} has methods: * {{boolean active()}}, {{void active(boolean active)}} - for cluster activation/deactivation * {{boolean readOnly()}}, {{void readOnly(boolean readOnly)}} - for enabling/disabling read-only mode. Also we have control.sh commans for changing cluster state: * {{--activate}} * {{--deactivate}} * {{--read-only-on}} * {{--read-only-off}} For me current API looks unuseful. My proposal: # Create enum {{ClusterState}} with values {{ACTIVE}}, {{INACTIVE}}, {{READ-ONLY}}. # Add methods to {{IgniteCluster}}: #* {{ClusterState state()}} returns current cluster state #* {{void state(ClusterState newState)}} changes cluster state to {{newState}} state # Mark as deprecated the following methods in {{IgniteCluster}}: {{boolean active()}}, {{void active(boolean active)}}, # Add new command to control.sh: {{control.sh --set-state (ACTIVE|INACTIVE|READ-ONLY)}} # Add warn message that command is depricated in control.sh. Commands: {{--activate}}, {{--deactivate}}, {{--read-only-on}}, {{--read-only-off}} was: We have 3 cluster states at the moment: inactive, active, read-only. For getting current cluster state and changing them {{IgniteCluster}} has methods: * {{boolean active()}}, {{void active(boolean active)}} - for cluster activation/deactivation * {{boolean readOnly()}}, {{void readOnly(boolean readOnly)}} - for enabling/disabling read-only mode. Also we have control.sh commans for changing cluster state: * {{--activate}} * {{--deactivate}} * {{--read-only-on}} * {{--read-only-off}} For me current API looks unuseful. My proposal: # Create enum {{ClusterState}} with values {{ACTIVE}}, {{INACTIVE}}, {{READ-ONLY}}. # Add methods to {{IgniteCluster}}: ## {{ClusterState state()}} returns current cluster state ## {{void state(ClusterState newState)}} changes cluster state to {{newState}} state # Mark as deprecated the following methods in {{IgniteCluster}}: {{boolean active()}}, {{void active(boolean active)}}, # Add new command to control.sh: {{control.sh --set-state (ACTIVE|INACTIVE|READ-ONLY)}} # Add warn message that command is depricated in control.sh. Commands: {{--activate}}, {{--deactivate}}, {{--read-only-on}}, {{--read-only-off}} > Add enum for cluster state > -------------------------- > > Key: IGNITE-12225 > URL: https://issues.apache.org/jira/browse/IGNITE-12225 > Project: Ignite > Issue Type: Improvement > Reporter: Sergey Antonov > Assignee: Sergey Antonov > Priority: Major > Fix For: 2.8 > > > We have 3 cluster states at the moment: inactive, active, read-only. > For getting current cluster state and changing them {{IgniteCluster}} has > methods: > * {{boolean active()}}, {{void active(boolean active)}} - for cluster > activation/deactivation > * {{boolean readOnly()}}, {{void readOnly(boolean readOnly)}} - for > enabling/disabling read-only mode. > Also we have control.sh commans for changing cluster state: > * {{--activate}} > * {{--deactivate}} > * {{--read-only-on}} > * {{--read-only-off}} > For me current API looks unuseful. My proposal: > # Create enum {{ClusterState}} with values {{ACTIVE}}, {{INACTIVE}}, > {{READ-ONLY}}. > # Add methods to {{IgniteCluster}}: > #* {{ClusterState state()}} returns current cluster state > #* {{void state(ClusterState newState)}} changes cluster state to > {{newState}} state > # Mark as deprecated the following methods in {{IgniteCluster}}: {{boolean > active()}}, {{void active(boolean active)}}, > # Add new command to control.sh: {{control.sh --set-state > (ACTIVE|INACTIVE|READ-ONLY)}} > # Add warn message that command is depricated in control.sh. Commands: > {{--activate}}, {{--deactivate}}, {{--read-only-on}}, {{--read-only-off}} -- This message was sent by Atlassian Jira (v8.3.4#803005)