Package io.debezium.connector.mysql
Enum MySqlConnectorConfig.SnapshotMode
- java.lang.Object
-
- java.lang.Enum<MySqlConnectorConfig.SnapshotMode>
-
- io.debezium.connector.mysql.MySqlConnectorConfig.SnapshotMode
-
- All Implemented Interfaces:
EnumeratedValue
,Serializable
,Comparable<MySqlConnectorConfig.SnapshotMode>
- Enclosing class:
- MySqlConnectorConfig
public static enum MySqlConnectorConfig.SnapshotMode extends Enum<MySqlConnectorConfig.SnapshotMode> implements EnumeratedValue
The set of predefined SnapshotMode options or aliases.
-
-
Enum Constant Summary
Enum Constants Enum Constant Description INITIAL
Perform a snapshot only upon initial startup of a connector.INITIAL_ONLY
Perform a snapshot and then stop before attempting to read the binlog.NEVER
Never perform a snapshot and only read the binlog.SCHEMA_ONLY
Perform a snapshot of only the database schemas (without data) and then begin reading the binlog.SCHEMA_ONLY_RECOVERY
Perform a snapshot of only the database schemas (without data) and then begin reading the binlog at the current binlog position.WHEN_NEEDED
Perform a snapshot when it is needed.
-
Field Summary
Fields Modifier and Type Field Description private boolean
includeData
private boolean
includeSchema
private boolean
shouldSnapshotOnDataError
private boolean
shouldSnapshotOnSchemaError
private boolean
shouldStream
private String
value
-
Constructor Summary
Constructors Modifier Constructor Description private
SnapshotMode(String value, boolean includeSchema, boolean includeData, boolean shouldStream, boolean shouldSnapshotOnSchemaError, boolean shouldSnapshotOnDataError)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getValue()
boolean
includeData()
Whether this snapshotting mode should include the actual data or just the schema of captured tables.boolean
includeSchema()
Whether this snapshotting mode should include the schema.static MySqlConnectorConfig.SnapshotMode
parse(String value)
Determine if the supplied value is one of the predefined options.static MySqlConnectorConfig.SnapshotMode
parse(String value, String defaultValue)
Determine if the supplied value is one of the predefined options.boolean
shouldSnapshot()
Whether the snapshot should be executed.boolean
shouldSnapshotOnDataError()
Whether the snapshot should be re-executed when there is a gap in data stream.boolean
shouldSnapshotOnSchemaError()
Whether the schema can be recovered if database history is corrupted.boolean
shouldStream()
Whether the snapshot mode is followed by streaming.static MySqlConnectorConfig.SnapshotMode
valueOf(String name)
Returns the enum constant of this type with the specified name.static MySqlConnectorConfig.SnapshotMode[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
WHEN_NEEDED
public static final MySqlConnectorConfig.SnapshotMode WHEN_NEEDED
Perform a snapshot when it is needed.
-
INITIAL
public static final MySqlConnectorConfig.SnapshotMode INITIAL
Perform a snapshot only upon initial startup of a connector.
-
SCHEMA_ONLY
public static final MySqlConnectorConfig.SnapshotMode SCHEMA_ONLY
Perform a snapshot of only the database schemas (without data) and then begin reading the binlog. This should be used with care, but it is very useful when the change event consumers need only the changes from the point in time the snapshot is made (and doesn't care about any state or changes prior to this point).
-
SCHEMA_ONLY_RECOVERY
public static final MySqlConnectorConfig.SnapshotMode SCHEMA_ONLY_RECOVERY
Perform a snapshot of only the database schemas (without data) and then begin reading the binlog at the current binlog position. This can be used for recovery only if the connector has existing offsets and the database.history.kafka.topic does not exist (deleted). This recovery option should be used with care as it assumes there have been no schema changes since the connector last stopped, otherwise some events during the gap may be processed with an incorrect schema and corrupted.
-
NEVER
public static final MySqlConnectorConfig.SnapshotMode NEVER
Never perform a snapshot and only read the binlog. This assumes the binlog contains all the history of those databases and tables that will be captured.
-
INITIAL_ONLY
public static final MySqlConnectorConfig.SnapshotMode INITIAL_ONLY
Perform a snapshot and then stop before attempting to read the binlog.
-
-
Field Detail
-
value
private final String value
-
includeSchema
private final boolean includeSchema
-
includeData
private final boolean includeData
-
shouldStream
private final boolean shouldStream
-
shouldSnapshotOnSchemaError
private final boolean shouldSnapshotOnSchemaError
-
shouldSnapshotOnDataError
private final boolean shouldSnapshotOnDataError
-
-
Constructor Detail
-
SnapshotMode
private SnapshotMode(String value, boolean includeSchema, boolean includeData, boolean shouldStream, boolean shouldSnapshotOnSchemaError, boolean shouldSnapshotOnDataError)
-
-
Method Detail
-
values
public static MySqlConnectorConfig.SnapshotMode[] 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 (MySqlConnectorConfig.SnapshotMode c : MySqlConnectorConfig.SnapshotMode.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static MySqlConnectorConfig.SnapshotMode 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
-
getValue
public String getValue()
- Specified by:
getValue
in interfaceEnumeratedValue
-
includeSchema
public boolean includeSchema()
Whether this snapshotting mode should include the schema.
-
includeData
public boolean includeData()
Whether this snapshotting mode should include the actual data or just the schema of captured tables.
-
shouldStream
public boolean shouldStream()
Whether the snapshot mode is followed by streaming.
-
shouldSnapshotOnSchemaError
public boolean shouldSnapshotOnSchemaError()
Whether the schema can be recovered if database history is corrupted.
-
shouldSnapshotOnDataError
public boolean shouldSnapshotOnDataError()
Whether the snapshot should be re-executed when there is a gap in data stream.
-
shouldSnapshot
public boolean shouldSnapshot()
Whether the snapshot should be executed.
-
parse
public static MySqlConnectorConfig.SnapshotMode parse(String value)
Determine if the supplied value is one of the predefined options.- Parameters:
value
- the configuration property value; may not be null- Returns:
- the matching option, or null if no match is found
-
parse
public static MySqlConnectorConfig.SnapshotMode parse(String value, String defaultValue)
Determine if the supplied value is one of the predefined options.- Parameters:
value
- the configuration property value; may not be nulldefaultValue
- the default value; may be null- Returns:
- the matching option, or null if no match is found and the non-null default is invalid
-
-