[
https://issues.apache.org/jira/browse/IGNITE-12225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17011807#comment-17011807
]
Ivan Rakov edited comment on IGNITE-12225 at 1/9/20 1:23 PM:
-------------------------------------------------------------
Merged to master.
[~mmuzaf] Are you OK with including this fix to 2.8 release? We won't be
obliged to keep this intermediate version of API:
{code:java}
/**
* Checks Ignite grid in read-only mode or not.
*
* @return {@code true} if grid is in read-only mode and {@code false} If
grid allows data modification operations.
*/
public boolean readOnly();
/**
* Enable or disable Ignite grid read-only mode.
*
* @param readOnly If {@code true} enable read-only mode. If {@code false}
disable read-only mode.
* @throws IgniteException If Ignite grid isn't active.
*/
public void readOnly(boolean readOnly) throws IgniteException;
{code}
was (Author: ivan.glukos):
Merged to master.
[~mmuzaf] Are you OK with including this fix to 2.8 release? It would be good
to include this fix: we won't be obliged to keep this intermediate version of
API:
{code:java}
/**
* Checks Ignite grid in read-only mode or not.
*
* @return {@code true} if grid is in read-only mode and {@code false} If
grid allows data modification operations.
*/
public boolean readOnly();
/**
* Enable or disable Ignite grid read-only mode.
*
* @param readOnly If {@code true} enable read-only mode. If {@code false}
disable read-only mode.
* @throws IgniteException If Ignite grid isn't active.
*/
public void readOnly(boolean readOnly) throws IgniteException;
{code}
> 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
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> 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)}} [--yes]
> # Add warn message that command is depricated in control.sh. Commands:
> --activate, --deactivate,
> # Remove commands from control.sh: --read-only-on, --read-only-off (no one
> release wasn't published with this functional)
> # Add new methods to {{IgniteConfiguration}}:
> #* {{ClusterState getClusterStateOnStart()}}
> #* {{IgniteConfiguration setClusterStateOnStart(ClusterState state)}}
> # Deprecate methods in {{IgniteConfiguration}}:
> #* {{boolean isActiveOnStart()}}
> #* {{IgniteConfiguration setActiveOnStart(boolean activeOnStart)}}
> # Depracate ClusterActivationEvent and introduce new ClusterStateChangeEvent.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)