Skip to main content

Crate faucet_sink_oracle

Crate faucet_sink_oracle 

Source
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§

OracleConnectionConfig
Connection settings shared by the Oracle source, CDC source and sink.
OracleSink
Oracle Database sink.
OracleSinkConfig
Configuration for OracleSink.
OracleTls
TCPS settings applied to a host-form connection.

Enums§

IdentifierCase
How record keys, table, key and the JSON column name map onto Oracle identifiers, which are case-sensitive once quoted.
OnUnknownField
What to do with record keys that don’t match a table column (auto_columns).
OracleColumnMapping
How records map onto table columns.

Constants§

DESCRIPTOR
The connector’s static descriptor (RFC 0013): its capabilities, answered from config alone.