Package io.debezium.connector.oracle
Class OracleConnectorConfig
java.lang.Object
io.debezium.config.CommonConnectorConfig
io.debezium.relational.RelationalDatabaseConnectorConfig
io.debezium.relational.HistorizedRelationalDatabaseConnectorConfig
io.debezium.connector.oracle.OracleConnectorConfig
Connector configuration for Oracle.
- Author:
- Gunnar Morling
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enumDefines modes of representation ofintervaldatatypestatic enumstatic enumstatic enumstatic enumThe set of predefined SnapshotMode options or aliases.private static classATables.TableFilterthat excludes all Oracle system tables.static enumControls how in-progress transactions that occur just before and at the snapshot boundary are to be handled by the connector when transitioning to the streaming phase.Nested classes/interfaces inherited from class io.debezium.relational.RelationalDatabaseConnectorConfig
RelationalDatabaseConnectorConfig.DecimalHandlingMode, RelationalDatabaseConnectorConfig.SnapshotTablesRowCountOrderNested classes/interfaces inherited from class io.debezium.config.CommonConnectorConfig
CommonConnectorConfig.BinaryHandlingMode, CommonConnectorConfig.EventProcessingFailureHandlingMode, CommonConnectorConfig.FieldNameAdjustmentMode, CommonConnectorConfig.SchemaNameAdjustmentMode, CommonConnectorConfig.Version -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic Field.SetThe set ofFields defined as part of this configuration.protected static final Durationprivate final booleanprivate final Durationprivate static final ConfigDefinitionstatic final Fieldstatic final Fieldprivate final Stringprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final Durationprotected static final intstatic final Fieldstatic final Fieldprivate final OracleConnectorConfig.IntervalHandlingModestatic final Fieldprivate final booleanstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldstatic final Fieldprivate static final org.slf4j.Loggerprivate final Stringprivate final Durationprivate final intprivate final intprivate final intprivate final booleanprivate final longprivate final OracleConnectorConfig.LogMiningBufferTypeprivate final booleanprivate final Durationprivate final intprivate final Durationprivate final Durationprivate final Booleanprivate final intprivate final intprivate final Durationprivate final Durationprivate final Durationprivate final Durationprivate final OracleConnectorConfig.LogMiningStrategyprivate final Durationprivate final OracleConnectorConfig.TransactionSnapshotBoundaryModeprotected static final intprotected static final Durationprotected static final intprotected static final Durationstatic final Fieldprivate final Stringstatic final Fieldstatic final Fieldprivate final intstatic final Fieldprotected static final Durationstatic final Fieldstatic final Fieldstatic final Fieldprivate final Stringprivate final OracleConnectorConfig.SnapshotLockingModeprivate final OracleConnectorConfig.SnapshotModeprivate final StreamingAdapterstatic final Fieldprivate final Stringstatic final FieldFields inherited from class io.debezium.relational.HistorizedRelationalDatabaseConnectorConfig
DEFAULT_SNAPSHOT_FETCH_SIZE, SCHEMA_HISTORY, SKIP_UNPARSEABLE_DDL_STATEMENTS, skipUnparseableDDL, STORE_ONLY_CAPTURED_DATABASES_DDL, STORE_ONLY_CAPTURED_TABLES_DDL, storeOnlyCapturedDatabasesDdl, storeOnlyCapturedTablesDdlFields inherited from class io.debezium.relational.RelationalDatabaseConnectorConfig
COLUMN_EXCLUDE_LIST, COLUMN_INCLUDE_LIST, COLUMN_INCLUDE_LIST_ALREADY_SPECIFIED_ERROR_MSG, DATABASE_EXCLUDE_LIST, DATABASE_EXCLUDE_LIST_NAME, DATABASE_INCLUDE_LIST, DATABASE_INCLUDE_LIST_ALREADY_SPECIFIED_ERROR_MSG, DATABASE_INCLUDE_LIST_NAME, DATABASE_NAME, DECIMAL_HANDLING_MODE, DEFAULT_SNAPSHOT_LOCK_TIMEOUT_MILLIS, DEFAULT_UNAVAILABLE_VALUE_PLACEHOLDER, HOSTNAME_PATTERN, INCLUDE_SCHEMA_CHANGES, INCLUDE_SCHEMA_COMMENTS, MASK_COLUMN, MASK_COLUMN_WITH_HASH, MSG_KEY_COLUMNS, PASSWORD, PROPAGATE_COLUMN_SOURCE_TYPE, PROPAGATE_DATATYPE_SOURCE_TYPE, SCHEMA_EXCLUDE_LIST, SCHEMA_EXCLUDE_LIST_NAME, SCHEMA_INCLUDE_LIST, SCHEMA_INCLUDE_LIST_ALREADY_SPECIFIED_ERROR_MSG, SCHEMA_INCLUDE_LIST_NAME, SNAPSHOT_FULL_COLUMN_SCAN_FORCE, SNAPSHOT_LOCK_TIMEOUT_MS, SNAPSHOT_SELECT_STATEMENT_OVERRIDES_BY_TABLE, SNAPSHOT_TABLES_ORDER_BY_ROW_COUNT, TABLE_EXCLUDE_LIST, TABLE_EXCLUDE_LIST_NAME, TABLE_IGNORE_BUILTIN, TABLE_INCLUDE_LIST, TABLE_INCLUDE_LIST_ALREADY_SPECIFIED_ERROR_MSG, TABLE_INCLUDE_LIST_NAME, TIME_PRECISION_MODE, TRUNCATE_COLUMN, UNAVAILABLE_VALUE_PLACEHOLDER, USERFields inherited from class io.debezium.config.CommonConnectorConfig
BINARY_HANDLING_MODE, CUSTOM_CONVERTERS, CUSTOM_RETRIABLE_EXCEPTION, DATABASE_CONFIG_PREFIX, DEFAULT_MAX_BATCH_SIZE, DEFAULT_MAX_QUEUE_SIZE, DEFAULT_MAX_QUEUE_SIZE_IN_BYTES, DEFAULT_POLL_INTERVAL_MILLIS, DEFAULT_RETRIABLE_RESTART_WAIT, DRIVER_CONFIG_PREFIX, EVENT_PROCESSING_FAILURE_HANDLING_MODE, FIELD_NAME_ADJUSTMENT_MODE, INCREMENTAL_SNAPSHOT_ALLOW_SCHEMA_CHANGES, INCREMENTAL_SNAPSHOT_CHUNK_SIZE, logicalName, MAX_QUEUE_SIZE, MAX_QUEUE_SIZE_IN_BYTES, MULTI_PARTITION_MODE, POLL_INTERVAL_MS, PROVIDE_TRANSACTION_METADATA, RETRIABLE_RESTART_WAIT, SCHEMA_NAME_ADJUSTMENT_MODE, SIGNAL_DATA_COLLECTION, SKIPPED_OPERATIONS, SNAPSHOT_DELAY_MS, SNAPSHOT_FETCH_SIZE, SNAPSHOT_MAX_THREADS, SNAPSHOT_MODE_TABLES, TASK_ID, TOMBSTONES_ON_DELETE, TOPIC_NAME_PATTERN, TOPIC_NAMING_STRATEGY, TOPIC_PREFIX -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic org.apache.kafka.common.config.ConfigDefprotected HistoryRecordComparatorintintintlongintintintintprotected SourceInfoStructMaker<? extends AbstractSourceInfo>booleanbooleanbooleanbooleanbooleanstatic intrequiredWhenNoHostname(Configuration config, Field field, Field.ValidationOutput problems) static intrequiredWhenNoUrl(Configuration config, Field field, Field.ValidationOutput problems) resolveRacNodes(Configuration config) private static StringtoUpperCase(String property) private static intvalidateLogMiningBufferType(Configuration config, Field field, Field.ValidationOutput problems) static intvalidateLogMiningInfinispanCacheConfiguration(Configuration config, Field field, Field.ValidationOutput problems) static intvalidateLogMiningReadOnly(Configuration config, Field field, Field.ValidationOutput problems) static intvalidateOutServerName(Configuration config, Field field, Field.ValidationOutput problems) static intvalidateRacNodes(Configuration config, Field field, Field.ValidationOutput problems) Methods inherited from class io.debezium.relational.HistorizedRelationalDatabaseConnectorConfig
ddlFilter, getSchemaHistory, multiPartitionMode, skipUnparseableDdlStatements, storeOnlyCapturedDatabases, storeOnlyCapturedTables, useCatalogBeforeSchemaMethods inherited from class io.debezium.relational.RelationalDatabaseConnectorConfig
createHeartbeat, getColumnFilter, getDecimalMode, getFieldNamer, getHeartbeatActionQuery, getJdbcConfig, getKeyMapper, getSnapshotSelectOverridesByTable, getTableFilters, getTableIdMapper, getTemporalPrecisionMode, getUnavailableValuePlaceholder, isColumnsFiltered, isFullColumnScanRequired, isSchemaChangesHistoryEnabled, isSchemaCommentsHistoryEnabled, schemaExcludeList, schemaIncludeList, snapshotLockTimeout, snapshotOrderByRowCount, tableExcludeList, tableIncludeListMethods inherited from class io.debezium.config.CommonConnectorConfig
binaryHandlingMode, customConverterRegistry, customRetriableException, fieldNameAdjuster, getConfig, getDataCollectionsToBeSnapshotted, getEventProcessingFailureHandlingMode, getHeartbeatInterval, getHeartbeatTopicsPrefix, getIncrementalSnashotChunkSize, getLogicalName, getMaxBatchSize, getMaxQueueSize, getMaxQueueSizeInBytes, getMaxRetriesOnError, getPollInterval, getRetriableRestartWait, getSignalingDataCollectionId, getSkippedOperations, getSnapshotDelay, getSnapshotFetchSize, getSnapshotMaxThreads, getSourceInfoStructMaker, getTaskId, getTopicNamingStrategy, getTopicNamingStrategy, isEmitTombstoneOnDelete, isIncrementalSnapshotSchemaChangesEnabled, isSignalDataCollection, parseSignallingMessage, schemaNameAdjuster, shouldProvideTransactionMetadata, supportsOperationFiltering, supportsSchemaChangesDuringIncrementalSnapshot, validate, validateAndRecord, validateSkippedOperation, validateTopicName
-
Field Details
-
DEFAULT_PORT
protected static final int DEFAULT_PORT- See Also:
-
DEFAULT_LOG_FILE_QUERY_MAX_RETRIES
protected static final int DEFAULT_LOG_FILE_QUERY_MAX_RETRIES- See Also:
-
DEFAULT_BATCH_SIZE
protected static final int DEFAULT_BATCH_SIZE- See Also:
-
MIN_BATCH_SIZE
protected static final int MIN_BATCH_SIZE- See Also:
-
MAX_BATCH_SIZE
protected static final int MAX_BATCH_SIZE- See Also:
-
DEFAULT_SCN_GAP_SIZE
protected static final int DEFAULT_SCN_GAP_SIZE- See Also:
-
DEFAULT_SCN_GAP_TIME_INTERVAL
protected static final int DEFAULT_SCN_GAP_TIME_INTERVAL- See Also:
-
DEFAULT_TRANSACTION_EVENTS_THRESHOLD
protected static final int DEFAULT_TRANSACTION_EVENTS_THRESHOLD- See Also:
-
DEFAULT_QUERY_FETCH_SIZE
protected static final int DEFAULT_QUERY_FETCH_SIZE- See Also:
-
MAX_SLEEP_TIME
-
DEFAULT_SLEEP_TIME
-
MIN_SLEEP_TIME
-
SLEEP_TIME_INCREMENT
-
ARCHIVE_LOG_ONLY_POLL_TIME
-
PORT
-
HOSTNAME
-
PDB_NAME
-
XSTREAM_SERVER_NAME
-
INTERVAL_HANDLING_MODE
-
SNAPSHOT_MODE
-
SNAPSHOT_LOCKING_MODE
-
CONNECTOR_ADAPTER
-
LOG_MINING_STRATEGY
-
CONTINUOUS_MINE
-
SNAPSHOT_ENHANCEMENT_TOKEN
-
LOG_MINING_TRANSACTION_RETENTION
-
RAC_NODES
-
URL
-
LOG_MINING_ARCHIVE_LOG_HOURS
-
LOG_MINING_BATCH_SIZE_MIN
-
LOG_MINING_BATCH_SIZE_DEFAULT
-
LOG_MINING_BATCH_SIZE_MAX
-
LOG_MINING_SLEEP_TIME_MIN_MS
-
LOG_MINING_SLEEP_TIME_DEFAULT_MS
-
LOG_MINING_SLEEP_TIME_MAX_MS
-
LOG_MINING_SLEEP_TIME_INCREMENT_MS
-
LOG_MINING_ARCHIVE_LOG_ONLY_MODE
-
LOG_MINING_ARCHIVE_LOG_ONLY_SCN_POLL_INTERVAL_MS
-
LOB_ENABLED
-
LOG_MINING_USERNAME_EXCLUDE_LIST
-
LOG_MINING_ARCHIVE_DESTINATION_NAME
-
LOG_MINING_BUFFER_TYPE
-
LOG_MINING_BUFFER_TRANSACTION_EVENTS_THRESHOLD
-
LOG_MINING_BUFFER_INFINISPAN_CACHE_TRANSACTIONS
-
LOG_MINING_BUFFER_INFINISPAN_CACHE_PROCESSED_TRANSACTIONS
-
LOG_MINING_BUFFER_INFINISPAN_CACHE_EVENTS
-
LOG_MINING_BUFFER_INFINISPAN_CACHE_SCHEMA_CHANGES
-
LOG_MINING_BUFFER_DROP_ON_STOP
-
LOG_MINING_SCN_GAP_DETECTION_GAP_SIZE_MIN
-
LOG_MINING_SCN_GAP_DETECTION_TIME_INTERVAL_MAX_MS
-
LOG_MINING_LOG_QUERY_MAX_RETRIES
-
LOG_MINING_LOG_BACKOFF_INITIAL_DELAY_MS
-
LOG_MINING_LOG_BACKOFF_MAX_DELAY_MS
-
LOG_MINING_SESSION_MAX_MS
-
LOG_MINING_TRANSACTION_SNAPSHOT_BOUNDARY_MODE
-
LOG_MINING_READ_ONLY
-
QUERY_FETCH_SIZE
-
CONFIG_DEFINITION
-
ALL_FIELDS
The set ofFields defined as part of this configuration. -
EXCLUDED_SCHEMAS
-
LOGGER
private static final org.slf4j.Logger LOGGER -
databaseName
-
pdbName
-
xoutServerName
-
intervalHandlingMode
-
snapshotMode
-
connectorAdapter
-
streamingAdapter
-
snapshotEnhancementToken
-
snapshotLockingMode
-
queryFetchSize
private final int queryFetchSize -
logMiningStrategy
-
racNodes
-
logMiningContinuousMine
private final boolean logMiningContinuousMine -
logMiningArchiveLogRetention
-
logMiningBatchSizeMin
private final int logMiningBatchSizeMin -
logMiningBatchSizeMax
private final int logMiningBatchSizeMax -
logMiningBatchSizeDefault
private final int logMiningBatchSizeDefault -
logMiningSleepTimeMin
-
logMiningSleepTimeMax
-
logMiningSleepTimeDefault
-
logMiningSleepTimeIncrement
-
logMiningTransactionRetention
-
archiveLogOnlyMode
private final boolean archiveLogOnlyMode -
archiveLogOnlyScnPollTime
-
lobEnabled
private final boolean lobEnabled -
logMiningUsernameExcludes
-
logMiningArchiveDestinationName
-
logMiningBufferType
-
logMiningBufferTransactionEventsThreshold
private final long logMiningBufferTransactionEventsThreshold -
logMiningBufferDropOnStop
private final boolean logMiningBufferDropOnStop -
logMiningScnGapDetectionGapSizeMin
private final int logMiningScnGapDetectionGapSizeMin -
logMiningScnGapDetectionTimeIntervalMaxMs
private final int logMiningScnGapDetectionTimeIntervalMaxMs -
logMiningLogFileQueryMaxRetries
private final int logMiningLogFileQueryMaxRetries -
logMiningInitialDelay
-
logMiningMaxDelay
-
logMiningMaximumSession
-
logMiningTransactionSnapshotBoundaryMode
private final OracleConnectorConfig.TransactionSnapshotBoundaryMode logMiningTransactionSnapshotBoundaryMode -
logMiningReadOnly
-
-
Constructor Details
-
OracleConnectorConfig
-
-
Method Details
-
configDef
public static org.apache.kafka.common.config.ConfigDef configDef() -
toUpperCase
-
getDatabaseName
-
getPdbName
-
getCatalogName
-
getXoutServerName
-
getIntervalHandlingMode
-
getSnapshotMode
-
getSnapshotLockingMode
-
getQueryFetchSize
public int getQueryFetchSize()- Overrides:
getQueryFetchSizein classCommonConnectorConfig
-
getHistoryRecordComparator
- Specified by:
getHistoryRecordComparatorin classHistorizedRelationalDatabaseConnectorConfig
-
getSourceInfoStructMaker
protected SourceInfoStructMaker<? extends AbstractSourceInfo> getSourceInfoStructMaker(CommonConnectorConfig.Version version) - Specified by:
getSourceInfoStructMakerin classCommonConnectorConfig
-
getContextName
- Specified by:
getContextNamein classCommonConnectorConfig
-
getAdapter
- Returns:
- the streaming adapter implementation
-
getLogMiningStrategy
- Returns:
- Log Mining strategy
-
isRacSystem
- Returns:
- whether Oracle is using RAC
-
getRacNodes
- Returns:
- set of node hosts or ip addresses used in Oracle RAC
-
getTokenToReplaceInSnapshotPredicate
- Returns:
- String token to replace
-
isContinuousMining
public boolean isContinuousMining()- Returns:
- whether continuous log mining is enabled
-
getLogMiningArchiveLogRetention
- Returns:
- the duration that archive logs are scanned for log mining
-
getLogMiningBatchSizeMin
public int getLogMiningBatchSizeMin()- Returns:
- int The minimum SCN interval used when mining redo/archive logs
-
getLogMiningBatchSizeMax
public int getLogMiningBatchSizeMax()- Returns:
- int The maximum SCN interval used when mining redo/archive logs
-
getLogMiningScnGapDetectionGapSizeMin
public int getLogMiningScnGapDetectionGapSizeMin()- Returns:
- int Scn gap size for SCN gap detection
-
getLogMiningScnGapDetectionTimeIntervalMaxMs
public int getLogMiningScnGapDetectionTimeIntervalMaxMs()- Returns:
- int Time interval for SCN gap detection
-
getLogMiningSleepTimeMin
- Returns:
- int The minimum sleep time used when mining redo/archive logs
-
getLogMiningSleepTimeMax
- Returns:
- int The maximum sleep time used when mining redo/archive logs
-
getLogMiningSleepTimeDefault
- Returns:
- int The default sleep time used when mining redo/archive logs
-
getLogMiningSleepTimeIncrement
- Returns:
- int The increment in sleep time when doing auto-tuning while mining redo/archive logs
-
getLogMiningTransactionRetention
- Returns:
- the duration for which long running transactions are permitted in the transaction buffer between log switches
-
isArchiveLogOnlyMode
public boolean isArchiveLogOnlyMode()- Returns:
- true if the connector is to mine archive logs only, false to mine all logs.
-
getArchiveLogOnlyScnPollTime
- Returns:
- the duration that archive log only will use to wait between polling scn availability
-
isLobEnabled
public boolean isLobEnabled()- Returns:
- true if LOB fields are to be captured; false otherwise to not capture LOB fields.
-
getLogMiningUsernameExcludes
- Returns:
- User names to exclude from the LogMiner query
-
getLogMiningArchiveDestinationName
- Returns:
- name of the archive destination configuration to use
-
getLogMiningBufferType
- Returns:
- the log mining buffer type implementation to be used
-
getLogMiningBufferTransactionEventsThreshold
public long getLogMiningBufferTransactionEventsThreshold()- Returns:
- the event count threshold for when a transaction should be discarded in the buffer.
-
isLogMiningBufferDropOnStop
public boolean isLogMiningBufferDropOnStop()- Returns:
- whether buffer cache should be dropped on connector stop.
-
getLogMiningBatchSizeDefault
public int getLogMiningBatchSizeDefault()- Returns:
- int The default SCN interval used when mining redo/archive logs
-
getMaximumNumberOfLogQueryRetries
public int getMaximumNumberOfLogQueryRetries()- Returns:
- the maximum number of retries that should be used to resolve log filenames for mining
-
getLogMiningInitialDelay
- Returns:
- the initial delay for the log query delay strategy
-
getLogMiningMaxDelay
- Returns:
- the maximum delay for the log query delay strategy
-
getLogMiningMaximumSession
- Returns:
- the maximum duration for a LogMiner session
-
getLogMiningTransactionSnapshotBoundaryMode
public OracleConnectorConfig.TransactionSnapshotBoundaryMode getLogMiningTransactionSnapshotBoundaryMode()- Returns:
- how in-progress transactions are the snapshot boundary are to be handled.
-
isLogMiningReadOnly
public boolean isLogMiningReadOnly()- Returns:
- true if log mining should operate in read-only mode.
-
getConnectorName
- Specified by:
getConnectorNamein classCommonConnectorConfig
-
resolveRacNodes
-
validateOutServerName
public static int validateOutServerName(Configuration config, Field field, Field.ValidationOutput problems) -
requiredWhenNoUrl
public static int requiredWhenNoUrl(Configuration config, Field field, Field.ValidationOutput problems) -
requiredWhenNoHostname
public static int requiredWhenNoHostname(Configuration config, Field field, Field.ValidationOutput problems) -
validateRacNodes
public static int validateRacNodes(Configuration config, Field field, Field.ValidationOutput problems) -
validateLogMiningBufferType
private static int validateLogMiningBufferType(Configuration config, Field field, Field.ValidationOutput problems) -
validateLogMiningInfinispanCacheConfiguration
public static int validateLogMiningInfinispanCacheConfiguration(Configuration config, Field field, Field.ValidationOutput problems) -
validateLogMiningReadOnly
public static int validateLogMiningReadOnly(Configuration config, Field field, Field.ValidationOutput problems)
-