Class RedisDatabaseHistory

java.lang.Object
io.debezium.relational.history.AbstractDatabaseHistory
io.debezium.server.redis.RedisDatabaseHistory
All Implemented Interfaces:
io.debezium.relational.history.DatabaseHistory

@ThreadSafe public final class RedisDatabaseHistory extends io.debezium.relational.history.AbstractDatabaseHistory
A DatabaseHistory implementation that stores the schema history in Redis.
  • Field Details

    • CONFIGURATION_FIELD_PREFIX_STRING

      private static final String CONFIGURATION_FIELD_PREFIX_STRING
      See Also:
    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • PROP_ADDRESS

      public static final io.debezium.config.Field PROP_ADDRESS
    • PROP_SSL_ENABLED

      public static final io.debezium.config.Field PROP_SSL_ENABLED
    • PROP_USER

      public static final io.debezium.config.Field PROP_USER
    • PROP_PASSWORD

      public static final io.debezium.config.Field PROP_PASSWORD
    • PROP_KEY

      public static final io.debezium.config.Field PROP_KEY
    • DEFAULT_RETRY_INITIAL_DELAY

      public static final Integer DEFAULT_RETRY_INITIAL_DELAY
    • PROP_RETRY_INITIAL_DELAY

      public static final io.debezium.config.Field PROP_RETRY_INITIAL_DELAY
    • DEFAULT_RETRY_MAX_DELAY

      public static final Integer DEFAULT_RETRY_MAX_DELAY
    • PROP_RETRY_MAX_DELAY

      public static final io.debezium.config.Field PROP_RETRY_MAX_DELAY
    • DEFAULT_CONNECTION_TIMEOUT

      public static final Integer DEFAULT_CONNECTION_TIMEOUT
    • PROP_CONNECTION_TIMEOUT

      public static final io.debezium.config.Field PROP_CONNECTION_TIMEOUT
    • DEFAULT_SOCKET_TIMEOUT

      public static final Integer DEFAULT_SOCKET_TIMEOUT
    • PROP_SOCKET_TIMEOUT

      public static final io.debezium.config.Field PROP_SOCKET_TIMEOUT
    • initialRetryDelay

      Duration initialRetryDelay
    • maxRetryDelay

      Duration maxRetryDelay
    • ALL_FIELDS

      public static Collection<io.debezium.config.Field> ALL_FIELDS
    • SINK_PROP_PREFIX

      private static final String SINK_PROP_PREFIX
      See Also:
    • writer

      private final io.debezium.document.DocumentWriter writer
    • reader

      private final io.debezium.document.DocumentReader reader
    • running

      private final AtomicBoolean running
    • config

      private io.debezium.config.Configuration config
    • redisKeyName

      private String redisKeyName
    • address

      private String address
    • user

      private String user
    • password

      private String password
    • sslEnabled

      private boolean sslEnabled
    • connectionTimeout

      private Integer connectionTimeout
    • socketTimeout

      private Integer socketTimeout
    • client

      private redis.clients.jedis.Jedis client
  • Constructor Details

    • RedisDatabaseHistory

      public RedisDatabaseHistory()
  • Method Details

    • connect

      void connect()
    • configure

      public void configure(io.debezium.config.Configuration config, io.debezium.relational.history.HistoryRecordComparator comparator, io.debezium.relational.history.DatabaseHistoryListener listener, boolean useCatalogBeforeSchema)
      Specified by:
      configure in interface io.debezium.relational.history.DatabaseHistory
      Overrides:
      configure in class io.debezium.relational.history.AbstractDatabaseHistory
    • start

      public void start()
      Specified by:
      start in interface io.debezium.relational.history.DatabaseHistory
      Overrides:
      start in class io.debezium.relational.history.AbstractDatabaseHistory
    • storeRecord

      protected void storeRecord(io.debezium.relational.history.HistoryRecord record) throws io.debezium.relational.history.DatabaseHistoryException
      Specified by:
      storeRecord in class io.debezium.relational.history.AbstractDatabaseHistory
      Throws:
      io.debezium.relational.history.DatabaseHistoryException
    • stop

      public void stop()
      Specified by:
      stop in interface io.debezium.relational.history.DatabaseHistory
      Overrides:
      stop in class io.debezium.relational.history.AbstractDatabaseHistory
    • recoverRecords

      protected void recoverRecords(Consumer<io.debezium.relational.history.HistoryRecord> records)
      Specified by:
      recoverRecords in class io.debezium.relational.history.AbstractDatabaseHistory
    • storageExists

      public boolean storageExists()
    • exists

      public boolean exists()