Oracle CDC (Beta)
The Micro-Integration for Oracle CDC captures changes (inserts, updates, deletes) from an Oracle database table (using Debezium) and streams them to a topic on an event broker service.
You can configure Oracle only as a source.
To configure the connection details for Oracle in your Micro-Integration, see Oracle CDC Connection Parameters
You must also define at least one Micro-Integration Flow that specifies:
-
the endpoints where data is consumed from and published to. For more information, see Micro-Integration Flow Parameters.
-
how the header and payload fields should be mapped. For more information, see Mapping Headers and Payloads
For message headers, see Oracle CDC Message Headers.
Oracle CDC Connection Parameters
The following table describes the connection parameters for Oracle CDC.
| Field | Description |
|---|---|
| Checkpoint Queue | The name of the Last Value Queue (LVQ) on the Solace event broker to use for checkpointing. The LVQ stores information about the files that have been processed and the files that are currently being processed. The LVQ must exist on the same event broker and VPN as the target destination. |
| Auto Create Checkpoint Queue | Select to automatically create the LVQ if it does not exist. The default value is false. |
Micro-Integration Flow Parameters
You must configure the endpoint parameters for each Flow. Each Flow can have different settings, but they all share the connection details of the parent Micro-Integration.
Oracle CDC Source Parameters
The following table describes the parameters for configuring Oracle CDC as a source.
| Field | Description |
|---|---|
| Destination | The Oracle table name, including the schema. You must specify the destination using the <schemaName>.<tableName> format. |
| Database Hostname | The hostname of the Oracle database server. |
| Database Port | The port of the Oracle database server. |
| Database DB Name (CDB/Service or SID) | The Oracle container database service name or SID (e.g., ORCLCDB, FREE). |
| Pluggable Database (PDB) Name | The Oracle pluggable database service name (e.g., ORCLPDB1, FREEPDB1). |
| Log Mining Flush Table Name | The name of the flush table that LogMiner uses. This name must be unique across workflows and multiple instances of Micro-Integrations in the same Oracle database. |
| Skip Delete Events | Select to skip the processing of delete events from the database change stream. |
| Disable LOB Processing | Select to disable capturing BLOB/CLOB/NCLOB values. LOB handling is enabled by default. |
| Authentication |
The authentication scheme for connecting to Oracle. Pre-populates to Basic Authentication. |
| Username | The Oracle database username. |
| Password | The Oracle database password. |
|
Additional Properties |
(Optional) Any additional properties for the Micro-Integration. Click Add Context if you need to specify additional context properties. For more information, see Additional Properties. |
Additional Properties
| Config Option | Type | Valid Values | Default Value | Description |
|---|---|---|---|---|
snapshotMode
|
String
|
initial, schema_only, when_needed, never, no_data, initial_only |
no_data
|
The criteria for running a snapshot upon startup of the Micro-Integration. |
columnExcludeList
|
String
|
A comma-separated list of columns to exclude from CDC events. Each entry must use the format:
Columns listed here will be omitted from the event payload before it is published. |
||
databaseConnectionAdapter
|
String
|
logminer, logminer_unbuffered, old, xstream |
logminer
|
The CDC implementation strategy. |
logMiningStrategy
|
String
|
online_catalog, redo_log_catalog, hybrid |
hybrid
|
The LogMiner strategy. |
logMiningSessionMaxMs
|
Integer
|
300000
|
The maximum LogMiner session duration in milliseconds. | |
logMiningSleepTimeIncrementMs
|
Integer
|
200
|
The sleep time increment for adaptive polling. | |
logMiningSleepTimeMaxMs
|
Integer
|
3000
|
The maximum sleep interval (ms) between LogMiner polling cycles when backoff is applied. | |
logMiningSleepTimeMinMs
|
Integer
|
1000
|
The minimum sleep interval (ms) between LogMiner polling cycles during low activity. | |
maxBatchSize
|
Integer
|
2048
|
The maximum number of events to batch. | |
maxQueueSize
|
Integer
|
8192
|
The maximum internal event queue size. | |
schemaNameAdjustmentMode
|
String
|
none
|
Controls how schema and table names are normalized to make them valid logical identifiers. | |
includeSchemaChanges
|
boolean
|
true, false |
false
|
When true, indicates that DDL schema changes will be captured. |
tombstonesOnDelete
|
boolean
|
true, false |
false
|
When true, indicates that tombstone events will be emitted on DELETE operations. |
eventProcessingFailureHandlingMode
|
String
|
fail, warn, skip, ignore |
fail
|
The error handling mode. |
snapshotLockingMode
|
String
|
shared, minimal, extended, none |
shared
|
Controls the type of locks acquired during the initial snapshot. shared prevents writes while reading tables, while minimal and none reduce locking at the risk of inconsistent snapshot reads. |
tableExcludeList
|
String
|
A comma-separated list of tables to exclude. |