Expand description
§faucet-sink-oracle
Oracle Database sink for the
faucet-stream ecosystem, built on
the oracle driver (ODPI-C).
Writes pages with array DML (one round trip per batch_size rows), supports
write_mode: upsert | delete via MERGE, atomic overwrite through a
staging table, exactly-once delivery via a _faucet_commit_token watermark
committed in the same transaction as the data, schema-drift evolution and
table auto-creation. Per-row rejections are reported for DLQ routing.
Runtime requirement: Oracle Instant Client must be installed where ODPI-C can load it.
let conn = OracleConnectionConfig::new("localhost", 1521, "FREEPDB1", "app", "secret");
let sink = OracleSink::new(OracleSinkConfig::new(conn, "EVENTS")).await?;Structs§
- Oracle
Connection Config - Connection settings shared by the Oracle source, CDC source and sink.
- Oracle
Sink - Oracle Database sink.
- Oracle
Sink Config - Configuration for
OracleSink. - Oracle
Tls - TCPS settings applied to a
host-form connection.
Enums§
- Identifier
Case - How record keys,
table,keyand the JSON column name map onto Oracle identifiers, which are case-sensitive once quoted. - OnUnknown
Field - What to do with record keys that don’t match a table column (
auto_columns). - Oracle
Column Mapping - How records map onto table columns.
Constants§
- DESCRIPTOR
- The connector’s static descriptor (RFC 0013): its capabilities, answered from config alone.