Package org.apache.cassandra.config
Enum Config.BatchlogEndpointStrategy
- java.lang.Object
-
- java.lang.Enum<Config.BatchlogEndpointStrategy>
-
- org.apache.cassandra.config.Config.BatchlogEndpointStrategy
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<Config.BatchlogEndpointStrategy>
- Enclosing class:
- Config
public static enum Config.BatchlogEndpointStrategy extends java.lang.Enum<Config.BatchlogEndpointStrategy>
-
-
Enum Constant Summary
Enum Constants Enum Constant Description dynamic
Strategy usingConfig.dynamic_snitch
(DynamicEndpointSnitch
) to select batchlog storage endpoints.dynamic_remote
Strategy usingConfig.dynamic_snitch
(DynamicEndpointSnitch
) to select batchlog storage endpoints.prefer_local
Random, except that one of the replications will go to the local rack.random_remote
Old, conventional strategy to select batchlog storage endpoints.
-
Field Summary
Fields Modifier and Type Field Description boolean
preferLocalRack
If true, one of the selected nodes will come from the local rack.boolean
useDynamicSnitchScores
If true, dynamic snitch response times will be used to select more responsive nodes to write the batchlog to.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Config.BatchlogEndpointStrategy
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static Config.BatchlogEndpointStrategy[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
random_remote
public static final Config.BatchlogEndpointStrategy random_remote
Old, conventional strategy to select batchlog storage endpoints. Purely random, prevents the local rack, if possible.
-
prefer_local
public static final Config.BatchlogEndpointStrategy prefer_local
Random, except that one of the replications will go to the local rack. Which means this strategy offers lower availability guarantees thanrandom_remote
ordynamic_remote
.
-
dynamic_remote
public static final Config.BatchlogEndpointStrategy dynamic_remote
Strategy usingConfig.dynamic_snitch
(DynamicEndpointSnitch
) to select batchlog storage endpoints. Prevents the local rack, if possible. This strategy offers the same availability guarantees asrandom_remote
but selects the fastest endpoints according to theDynamicEndpointSnitch
. Hint:DynamicEndpointSnitch
tracks reads and not writes - i.e. write-only (or mostly-write) workloads might not benefit from this strategy. Note: this strategy will fall back torandom_remote
, ifConfig.dynamic_snitch
is not enabled.
-
dynamic
public static final Config.BatchlogEndpointStrategy dynamic
Strategy usingConfig.dynamic_snitch
(DynamicEndpointSnitch
) to select batchlog storage endpoints. Does not prevent the local rack. Since the local rack is not excluded, this strategy offers lower availability guarantees thanrandom_remote
ordynamic_remote
. Hint:DynamicEndpointSnitch
tracks reads and not writes - i.e. write-only (or mostly-write) workloads might not benefit from this strategy. Note: this strategy will fall back torandom_remote
, ifConfig.dynamic_snitch
is not enabled.
-
-
Field Detail
-
useDynamicSnitchScores
public final boolean useDynamicSnitchScores
If true, dynamic snitch response times will be used to select more responsive nodes to write the batchlog to. If false, nodes will be randomly selected.
-
preferLocalRack
public final boolean preferLocalRack
If true, one of the selected nodes will come from the local rack. If false, the local rack will not be used except as a last resort with no other racks available.
-
-
Method Detail
-
values
public static Config.BatchlogEndpointStrategy[] 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 (Config.BatchlogEndpointStrategy c : Config.BatchlogEndpointStrategy.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Config.BatchlogEndpointStrategy valueOf(java.lang.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:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
-