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 Details

    • 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 schema.history.internal.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 Details

    • 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 Details

    • SnapshotMode

      private SnapshotMode(String value, boolean includeSchema, boolean includeData, boolean shouldStream, boolean shouldSnapshotOnSchemaError, boolean shouldSnapshotOnDataError)
  • Method Details

    • values

      public static MySqlConnectorConfig.SnapshotMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      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 name
      NullPointerException - if the argument is null
    • getValue

      public String getValue()
      Specified by:
      getValue in interface EnumeratedValue
    • 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 schema 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 null
      defaultValue - the default value; may be null
      Returns:
      the matching option, or null if no match is found and the non-null default is invalid