Class MariaDbConnectorConfig

java.lang.Object
io.debezium.config.CommonConnectorConfig
io.debezium.relational.RelationalDatabaseConnectorConfig
io.debezium.relational.HistorizedRelationalDatabaseConnectorConfig
io.debezium.connector.binlog.BinlogConnectorConfig
io.debezium.connector.mariadb.MariaDbConnectorConfig

public class MariaDbConnectorConfig extends BinlogConnectorConfig
Configuration properties for MariaDB.
Author:
Chris Cranford
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • DEFAULT_NON_STREAMING_FETCH_SIZE

      private static final int DEFAULT_NON_STREAMING_FETCH_SIZE
      For MariaDB to mimic MySQL behavior using Integer.MIN_VALUE, the default fetch size must explicitly be set to 1. This is because MariaDB drivers 3.x+ do not support the old non-compliant JDBC-spec style that MySQL uses.
      See Also:
    • SOURCE_INFO_STRUCT_MAKER

      public static final io.debezium.config.Field SOURCE_INFO_STRUCT_MAKER
    • SNAPSHOT_LOCKING_MODE

      public static final io.debezium.config.Field SNAPSHOT_LOCKING_MODE
    • GTID_SOURCE_INCLUDES

      public static final io.debezium.config.Field GTID_SOURCE_INCLUDES
      MariaDB GTID format uses "domain-server-sequence". This configuration should specify a comma-separated list of regular expressions that match the "domain-server" tuples when locating the binlog position in a MariaDB server. Only the GTID ranges that have sources that match one of these patterns will be used.
    • GTID_SOURCE_EXCLUDES

      public static final io.debezium.config.Field GTID_SOURCE_EXCLUDES
      MariaDB GTID format uses "domain-server-sequence". This configuration should specify a comma-separataed list of regular expressions that match the "domain-server" tuples when locating the binlog position in a MariaDB server. GTIDs that do not match any of these patterns will be used.
    • CONFIG_DEFINITION

      private static final io.debezium.config.ConfigDefinition CONFIG_DEFINITION
    • ALL_FIELDS

      public static io.debezium.config.Field.Set ALL_FIELDS
      The set of Fields defined as part of this connector configuration.
    • gtidSetFactory

      private final GtidSetFactory gtidSetFactory
    • gtidSourceFilter

      private final Predicate<String> gtidSourceFilter
    • snapshotLockingMode

      private final MariaDbConnectorConfig.SnapshotLockingMode snapshotLockingMode
    • snapshotLockingStrategy

      private final BinlogConnectorConfig.SnapshotLockingStrategy snapshotLockingStrategy
  • Constructor Details

    • MariaDbConnectorConfig

      public MariaDbConnectorConfig(io.debezium.config.Configuration config)
  • Method Details

    • configDef

      protected static org.apache.kafka.common.config.ConfigDef configDef()
    • getSourceInfoStructMaker

      protected io.debezium.connector.SourceInfoStructMaker<? extends io.debezium.connector.AbstractSourceInfo> getSourceInfoStructMaker(io.debezium.config.CommonConnectorConfig.Version version)
      Specified by:
      getSourceInfoStructMaker in class io.debezium.config.CommonConnectorConfig
    • getContextName

      public String getContextName()
      Specified by:
      getContextName in class io.debezium.config.CommonConnectorConfig
    • getConnectorName

      public String getConnectorName()
      Specified by:
      getConnectorName in class io.debezium.config.CommonConnectorConfig
    • getGtidSourceFilter

      public Predicate<String> getGtidSourceFilter()
      Specified by:
      getGtidSourceFilter in class BinlogConnectorConfig
    • getGtidSetFactory

      public GtidSetFactory getGtidSetFactory()
      Specified by:
      getGtidSetFactory in class BinlogConnectorConfig
    • getHistoryRecordComparator

      protected io.debezium.relational.history.HistoryRecordComparator getHistoryRecordComparator()
      Specified by:
      getHistoryRecordComparator in class io.debezium.relational.HistorizedRelationalDatabaseConnectorConfig
    • getSnapshotLockingStrategy

      protected BinlogConnectorConfig.SnapshotLockingStrategy getSnapshotLockingStrategy()
      Specified by:
      getSnapshotLockingStrategy in class BinlogConnectorConfig
    • getSnapshotLockingMode

      public Optional<MariaDbConnectorConfig.SnapshotLockingMode> getSnapshotLockingMode()
      Specified by:
      getSnapshotLockingMode in class io.debezium.config.CommonConnectorConfig
    • validateSnapshotLockingMode

      private static int validateSnapshotLockingMode(io.debezium.config.Configuration config, io.debezium.config.Field field, io.debezium.config.Field.ValidationOutput problems)
      Validate the new snapshot.locking.mode configuration.
      Parameters:
      config - the connector configuration
      field - the field being validated
      problems - the validation output
      Returns:
      the number of problems detected