Class CassandraConnectorConfig


  • public class CassandraConnectorConfig
    extends io.debezium.config.CommonConnectorConfig
    All configs used by a Cassandra connector agent.
    • Field Detail

      • KAFKA_PRODUCER_CONFIG_PREFIX

        public static final String KAFKA_PRODUCER_CONFIG_PREFIX
        The prefix prepended to all Kafka producer configurations, including schema registry
        See Also:
        Constant Field Values
      • KEY_CONVERTER_PREFIX

        public static final String KEY_CONVERTER_PREFIX
        The prefix prepended to all Kafka key converter configurations, including schema registry.
        See Also:
        Constant Field Values
      • VALUE_CONVERTER_PREFIX

        public static final String VALUE_CONVERTER_PREFIX
        The prefix prepended to all Kafka value converter configurations, including schema registry.
        See Also:
        Constant Field Values
      • CONNECTOR_NAME

        public static final io.debezium.config.Field CONNECTOR_NAME
      • KAFKA_TOPIC_PREFIX

        public static final io.debezium.config.Field KAFKA_TOPIC_PREFIX
      • KEY_CONVERTER_CLASS_CONFIG

        public static final io.debezium.config.Field KEY_CONVERTER_CLASS_CONFIG
      • VALUE_CONVERTER_CLASS_CONFIG

        public static final io.debezium.config.Field VALUE_CONVERTER_CLASS_CONFIG
      • DEFAULT_SNAPSHOT_MODE

        public static final String DEFAULT_SNAPSHOT_MODE
        Must be one of 'INITIAL', 'ALWAYS', or 'NEVER'. The default snapshot mode is 'INITIAL'. See for details.
        See Also:
        Constant Field Values
      • SNAPSHOT_MODE

        public static final io.debezium.config.Field SNAPSHOT_MODE
      • DEFAULT_SNAPSHOT_CONSISTENCY

        public static final String DEFAULT_SNAPSHOT_CONSISTENCY
        Specify the ConsistencyLevel used for the snapshot query.
        See Also:
        Constant Field Values
      • SNAPSHOT_CONSISTENCY

        public static final io.debezium.config.Field SNAPSHOT_CONSISTENCY
      • HTTP_PORT

        public static final io.debezium.config.Field HTTP_PORT
      • CASSANDRA_CONFIG

        public static final io.debezium.config.Field CASSANDRA_CONFIG
      • CASSANDRA_HOSTS

        public static final io.debezium.config.Field CASSANDRA_HOSTS
      • CASSANDRA_PORT

        public static final io.debezium.config.Field CASSANDRA_PORT
      • CASSANDRA_USERNAME

        public static final io.debezium.config.Field CASSANDRA_USERNAME
      • CASSANDRA_PASSWORD

        public static final io.debezium.config.Field CASSANDRA_PASSWORD
      • DEFAULT_CASSANDRA_SSL_ENABLED

        public static final boolean DEFAULT_CASSANDRA_SSL_ENABLED
        See Also:
        Constant Field Values
      • CASSANDRA_SSL_ENABLED

        public static final io.debezium.config.Field CASSANDRA_SSL_ENABLED
      • CASSANDRA_SSL_CONFIG_PATH

        public static final io.debezium.config.Field CASSANDRA_SSL_CONFIG_PATH
      • COMMIT_LOG_RELOCATION_DIR

        public static final io.debezium.config.Field COMMIT_LOG_RELOCATION_DIR
      • DEFAULT_COMMIT_LOG_POST_PROCESSING_ENABLED

        public static final boolean DEFAULT_COMMIT_LOG_POST_PROCESSING_ENABLED
        If disabled, commit logs would not be deleted post-process, and this could lead to disk storage
        See Also:
        Constant Field Values
      • COMMIT_LOG_POST_PROCESSING_ENABLED

        public static final io.debezium.config.Field COMMIT_LOG_POST_PROCESSING_ENABLED
      • DEFAULT_COMMIT_LOG_ERROR_REPROCESSING_ENABLED

        public static final boolean DEFAULT_COMMIT_LOG_ERROR_REPROCESSING_ENABLED
        See Also:
        Constant Field Values
      • COMMIT_LOG_ERROR_REPROCESSING_ENABLED

        public static final io.debezium.config.Field COMMIT_LOG_ERROR_REPROCESSING_ENABLED
      • DEFAULT_COMMIT_LOG_TRANSFER_CLASS

        public static final String DEFAULT_COMMIT_LOG_TRANSFER_CLASS
        The fully qualified CommitLogTransfer class used to transfer commit logs. The default option will delete all commit log files after processing (successful or otherwise). You can extend a custom implementation.
        See Also:
        Constant Field Values
      • COMMIT_LOG_TRANSFER_CLASS

        public static final io.debezium.config.Field COMMIT_LOG_TRANSFER_CLASS
      • OFFSET_BACKING_STORE_DIR

        public static final io.debezium.config.Field OFFSET_BACKING_STORE_DIR
      • DEFAULT_OFFSET_FLUSH_INTERVAL_MS

        public static final int DEFAULT_OFFSET_FLUSH_INTERVAL_MS
        The default value of 0 implies the offset will be flushed every time.
        See Also:
        Constant Field Values
      • OFFSET_FLUSH_INTERVAL_MS

        public static final io.debezium.config.Field OFFSET_FLUSH_INTERVAL_MS
      • DEFAULT_MAX_OFFSET_FLUSH_SIZE

        public static final int DEFAULT_MAX_OFFSET_FLUSH_SIZE
        This config is effective only if offset_flush_interval_ms != 0
        See Also:
        Constant Field Values
      • MAX_OFFSET_FLUSH_SIZE

        public static final io.debezium.config.Field MAX_OFFSET_FLUSH_SIZE
      • DEFAULT_SCHEMA_POLL_INTERVAL_MS

        public static final int DEFAULT_SCHEMA_POLL_INTERVAL_MS
        See Also:
        Constant Field Values
      • SCHEMA_POLL_INTERVAL_MS

        public static final io.debezium.config.Field SCHEMA_POLL_INTERVAL_MS
      • DEFAULT_CDC_DIR_POLL_INTERVAL_MS

        public static final int DEFAULT_CDC_DIR_POLL_INTERVAL_MS
        See Also:
        Constant Field Values
      • CDC_DIR_POLL_INTERVAL_MS

        public static final io.debezium.config.Field CDC_DIR_POLL_INTERVAL_MS
      • DEFAULT_SNAPSHOT_POLL_INTERVAL_MS

        public static final int DEFAULT_SNAPSHOT_POLL_INTERVAL_MS
        See Also:
        Constant Field Values
      • SNAPSHOT_POLL_INTERVAL_MS

        public static final io.debezium.config.Field SNAPSHOT_POLL_INTERVAL_MS
      • DEFAULT_COMMIT_LOG_RELOCATION_DIR_POLL_INTERVAL_MS

        public static final int DEFAULT_COMMIT_LOG_RELOCATION_DIR_POLL_INTERVAL_MS
        See Also:
        Constant Field Values
      • COMMIT_LOG_RELOCATION_DIR_POLL_INTERVAL_MS

        public static final io.debezium.config.Field COMMIT_LOG_RELOCATION_DIR_POLL_INTERVAL_MS
      • DEFAULT_NUM_OF_CHANGE_EVENT_QUEUES

        public static final int DEFAULT_NUM_OF_CHANGE_EVENT_QUEUES
        See Also:
        Constant Field Values
      • NUM_OF_CHANGE_EVENT_QUEUES

        public static final io.debezium.config.Field NUM_OF_CHANGE_EVENT_QUEUES
      • FIELD_EXCLUDE_LIST

        public static final io.debezium.config.Field FIELD_EXCLUDE_LIST
        A comma-separated list of fully-qualified names of fields that should be excluded from change event message values. Fully-qualified names for fields are in the form <keyspace_name>.<field_name>.<nested_field_name>.
      • FIELD_BLACKLIST

        @Deprecated
        public static final io.debezium.config.Field FIELD_BLACKLIST
        Deprecated.
        Old, backwards-compatible "blacklist" property.
      • DEFAULT_LATEST_COMMIT_LOG_ONLY

        public static final boolean DEFAULT_LATEST_COMMIT_LOG_ONLY
        Instead of parsing commit logs from CDC directory, this will look for the commit log with the latest modified timestamp in the commit log directory and attempt to process this file only. Only used for Testing!
        See Also:
        Constant Field Values
      • LATEST_COMMIT_LOG_ONLY

        public static final io.debezium.config.Field LATEST_COMMIT_LOG_ONLY
      • DEFAULT_POLL_INTERVAL_MS

        public static final int DEFAULT_POLL_INTERVAL_MS
        See Also:
        Constant Field Values
      • DEFAULT_TOMBSTONES_ON_DELETE

        public static final boolean DEFAULT_TOMBSTONES_ON_DELETE
        See Also:
        Constant Field Values
      • DEFAULT_SNAPSHOT_FETCH_SIZE

        protected static final int DEFAULT_SNAPSHOT_FETCH_SIZE
        See Also:
        Constant Field Values
      • validationFieldList

        public static List<io.debezium.config.Field> validationFieldList
      • VALIDATION_FIELDS

        public static io.debezium.config.Field.Set VALIDATION_FIELDS
    • Constructor Detail

      • CassandraConnectorConfig

        public CassandraConnectorConfig​(io.debezium.config.Configuration config)
    • Method Detail

      • connectorName

        public String connectorName()
      • kafkaTopicPrefix

        public String kafkaTopicPrefix()
      • getKafkaConfigs

        public Properties getKafkaConfigs()
      • commitLogTransferConfigs

        public Properties commitLogTransferConfigs()
      • latestCommitLogOnly

        public boolean latestCommitLogOnly()
      • snapshotConsistencyLevel

        public com.datastax.driver.core.ConsistencyLevel snapshotConsistencyLevel()
      • httpPort

        public int httpPort()
      • cassandraConfig

        public String cassandraConfig()
      • cassandraHosts

        public String[] cassandraHosts()
      • cassandraPort

        public int cassandraPort()
      • cassandraSslEnabled

        public boolean cassandraSslEnabled()
      • cassandraSslConfigPath

        public String cassandraSslConfigPath()
      • cassandraUsername

        public String cassandraUsername()
      • cassandraPassword

        public String cassandraPassword()
      • commitLogRelocationDir

        public String commitLogRelocationDir()
      • postProcessEnabled

        public boolean postProcessEnabled()
      • errorCommitLogReprocessEnabled

        public boolean errorCommitLogReprocessEnabled()
      • offsetBackingStoreDir

        public String offsetBackingStoreDir()
      • offsetFlushIntervalMs

        public Duration offsetFlushIntervalMs()
      • maxOffsetFlushSize

        public long maxOffsetFlushSize()
      • maxQueueSize

        public int maxQueueSize()
      • maxBatchSize

        public int maxBatchSize()
      • pollInterval

        public Duration pollInterval()
        Positive integer value that specifies the number of milliseconds the commit log processor should wait during each iteration for new change events to appear in the queue. Defaults to 1000 milliseconds, or 1 second.
      • schemaPollInterval

        public Duration schemaPollInterval()
      • cdcDirPollInterval

        public Duration cdcDirPollInterval()
      • snapshotPollInterval

        public Duration snapshotPollInterval()
      • commitLogRelocationDirPollInterval

        public Duration commitLogRelocationDirPollInterval()
      • numOfChangeEventQueues

        public int numOfChangeEventQueues()
      • fieldExcludeList

        public List<String> fieldExcludeList()
      • tombstonesOnDelete

        public boolean tombstonesOnDelete()
        Whether deletion events should have a subsequent tombstone event (true) or not (false). It's important to note that in Cassandra, two events with the same key may be updating different columns of a given table. So this could potentially result in records being lost during compaction if they haven't been consumed by the consumer yet. In other words, do NOT set this to true if you have kafka compaction turned on.
      • keyValueConverterConfigs

        private Map<String,​Object> keyValueConverterConfigs​(String converterPrefix)
      • getContextName

        public String getContextName()
        Specified by:
        getContextName in class io.debezium.config.CommonConnectorConfig
      • 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
      • getConnectorName

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