Enum ConfigurationVariables.GroupReplicationConsistency
- java.lang.Object
-
- java.lang.Enum<ConfigurationVariables.GroupReplicationConsistency>
-
- com.oracle.bmc.mysql.model.ConfigurationVariables.GroupReplicationConsistency
-
- All Implemented Interfaces:
BmcEnum
,Serializable
,Comparable<ConfigurationVariables.GroupReplicationConsistency>
- Enclosing class:
- ConfigurationVariables
public static enum ConfigurationVariables.GroupReplicationConsistency extends Enum<ConfigurationVariables.GroupReplicationConsistency> implements BmcEnum
- EVENTUAL: Both RO and RW transactions do not wait for preceding transactions to be applied before executing.
A RW transaction does not wait for other members to apply a transaction. This means that a transaction could be externalized on one member before the others. This also means that in the event of a primary failover, the new primary can accept new RO and RW transactions before the previous primary transactions are all applied. RO transactions could result in outdated values, RW transactions could result in a rollback due to conflicts. - BEFORE_ON_PRIMARY_FAILOVER: New RO or RW transactions with a newly elected primary that is applying backlog from the old primary are held (not applied) until any backlog has been applied. This ensures that when a primary failover happens, intentionally or not, clients always see the latest value on the primary. This guarantees consistency, but means that clients must be able to handle the delay in the event that a backlog is being applied. Usually this delay should be minimal, but does depend on the size of the backlog. - BEFORE: A RW transaction waits for all preceding transactions to complete before being applied. A RO transaction waits for all preceding transactions to complete before being executed. This ensures that this transaction reads the latest value by only affecting the latency of the transaction. This reduces the overhead of synchronization on every RW transaction, by ensuring synchronization is used only on RO transactions. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER. - AFTER: A RW transaction waits until its changes have been applied to all of the other members. This value has no effect on RO transactions. This mode ensures that when a transaction is committed on the local member, any subsequent transaction reads the written value or a more recent value on any group member. Use this mode with a group that is used for predominantly RO operations to ensure that applied RW transactions are applied everywhere once they commit. This could be used by your application to ensure that subsequent reads fetch the latest data which includes the latest writes. This reduces the overhead of synchronization on every RO transaction, by ensuring synchronization is used only on RW transactions. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER. - BEFORE_AND_AFTER: A RW transaction waits for 1) all preceding transactions to complete before being applied and 2) until its changes have been applied on other members. A RO transaction waits for all preceding transactions to complete before execution takes place. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER.
-
-
Enum Constant Summary
Enum Constants Enum Constant Description After
Before
BeforeAndAfter
BeforeOnPrimaryFailover
Eventual
UnknownEnumValue
This value is used if a service returns a value for this enum that is not recognized by this version of the SDK.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ConfigurationVariables.GroupReplicationConsistency
create(String key)
String
getValue()
static ConfigurationVariables.GroupReplicationConsistency
valueOf(String name)
Returns the enum constant of this type with the specified name.static ConfigurationVariables.GroupReplicationConsistency[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
Eventual
public static final ConfigurationVariables.GroupReplicationConsistency Eventual
-
BeforeOnPrimaryFailover
public static final ConfigurationVariables.GroupReplicationConsistency BeforeOnPrimaryFailover
-
Before
public static final ConfigurationVariables.GroupReplicationConsistency Before
-
After
public static final ConfigurationVariables.GroupReplicationConsistency After
-
BeforeAndAfter
public static final ConfigurationVariables.GroupReplicationConsistency BeforeAndAfter
-
UnknownEnumValue
public static final ConfigurationVariables.GroupReplicationConsistency UnknownEnumValue
This value is used if a service returns a value for this enum that is not recognized by this version of the SDK.
-
-
Method Detail
-
values
public static ConfigurationVariables.GroupReplicationConsistency[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (ConfigurationVariables.GroupReplicationConsistency c : ConfigurationVariables.GroupReplicationConsistency.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static ConfigurationVariables.GroupReplicationConsistency valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
create
public static ConfigurationVariables.GroupReplicationConsistency create(String key)
-
-