pub struct PostgresWriterConfig {
pub uri: String,
pub table: String,
pub mode: PostgresWriteMode,
pub cdc_op_column: String,
pub cdc_ts_column: String,
pub tls: PostgresTlsConfig,
pub max_records_in_buffer: Option<usize>,
pub max_buffer_size_bytes: usize,
pub on_conflict_do_nothing: bool,
pub threads: usize,
}Expand description
Postgres output connector configuration.
Fields§
§uri: String§table: StringThe table to write the output to.
mode: PostgresWriteModeWrite mode for the connector.
materialized(default): Perform direct INSERT, UPDATE, and DELETE operations on the table.cdc: Write all operations as INSERT operations into an append-only event log with additional metadata columns describing the operation type and timestamp.
cdc_op_column: StringName of the operation metadata column in CDC mode.
Only used when mode = "cdc". This column will contain:
"i"for insert operations"u"for upsert operations"d"for delete operations
Default: "__feldera_op"
cdc_ts_column: StringName of the timestamp metadata column in CDC mode.
Only used when mode = "cdc". This column will contain the timestamp
(in RFC 3339 format) when the batch of updates was output
by the pipeline.
Default: "__feldera_ts"
tls: PostgresTlsConfigTLS/SSL configuration.
max_records_in_buffer: Option<usize>The maximum number of records in a single buffer.
max_buffer_size_bytes: usizeThe maximum buffer size in for a single operation.
Note that the buffers of INSERT, UPDATE and DELETE queries are
separate.
Default: 1 MiB
on_conflict_do_nothing: boolSpecifies how the connector handles conflicts when executing an INSERT
into a table with a primary key. By default, an existing row with the same
key is overwritten. Setting this flag to true preserves the existing row
and ignores the new insert.
This setting does not affect UPDATE statements, which always replace the
value associated with the key.
This setting is not supported when mode = "cdc", since all operations
are performed as append-only INSERTs into the target table.
Any conflict in CDC mode will result in an error.
Default: false
threads: usizeThe number of threads to use during encoding.
Default: 1
Implementations§
Trait Implementations§
Source§impl Clone for PostgresWriterConfig
impl Clone for PostgresWriterConfig
Source§fn clone(&self) -> PostgresWriterConfig
fn clone(&self) -> PostgresWriterConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PostgresWriterConfig
impl Debug for PostgresWriterConfig
Source§impl<'de> Deserialize<'de> for PostgresWriterConfig
impl<'de> Deserialize<'de> for PostgresWriterConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for PostgresWriterConfig
impl PartialEq for PostgresWriterConfig
Source§impl Serialize for PostgresWriterConfig
impl Serialize for PostgresWriterConfig
Source§impl<'__s> ToSchema<'__s> for PostgresWriterConfig
impl<'__s> ToSchema<'__s> for PostgresWriterConfig
impl Eq for PostgresWriterConfig
impl StructuralPartialEq for PostgresWriterConfig
Auto Trait Implementations§
impl Freeze for PostgresWriterConfig
impl RefUnwindSafe for PostgresWriterConfig
impl Send for PostgresWriterConfig
impl Sync for PostgresWriterConfig
impl Unpin for PostgresWriterConfig
impl UnsafeUnpin for PostgresWriterConfig
impl UnwindSafe for PostgresWriterConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.