pub struct SubscriptionOptions {Show 13 fields
pub enabled: Option<bool>,
pub slot_name: Option<Identifier>,
pub create_slot: Option<bool>,
pub copy_data: Option<bool>,
pub synchronous_commit: Option<String>,
pub binary: Option<bool>,
pub streaming: Option<StreamingMode>,
pub two_phase: Option<bool>,
pub disable_on_error: Option<bool>,
pub password_required: Option<bool>,
pub run_as_owner: Option<bool>,
pub origin: Option<OriginMode>,
pub failover: Option<bool>,
}Expand description
Per-field lenient WITH options for a Subscription.
Every field is Option<T>. None = unmanaged (pgevolve neither sets
nor resets); Some(value) = managed (diff emits an ALTER to match).
Matches the v0.3.3 reloptions per-field-lenient pattern.
CREATE-only fields: create_slot and copy_data are PG-CREATE-only
(no ALTER SUBSCRIPTION s SET (create_slot = …) exists). They flow into
the IR from source CREATE statements so users can declare them, but the
differ NEVER includes them in AlterSubscriptionSetOptions deltas, and
the catalog reader ALWAYS returns None for them (pg_subscription
doesn’t store the CREATE-time decision). See diff::subscriptions::options_delta.
Fields§
§enabled: Option<bool>Whether the subscription is enabled. PG default: true.
slot_name: Option<Identifier>Replication slot name on the publisher. None = use subscription name.
create_slot: Option<bool>Whether CREATE SUBSCRIPTION should create the publisher-side slot.
PG default: true.
copy_data: Option<bool>Whether to copy existing rows during initial sync. PG default: true.
synchronous_commit: Option<String>synchronous_commit GUC value for the subscription’s apply worker.
Free-form string (e.g., "on", "off", "remote_write", "local").
binary: Option<bool>Use binary copy / binary replication protocol. PG default: false.
streaming: Option<StreamingMode>Streaming mode for large in-progress transactions.
two_phase: Option<bool>Two-phase commit handling. PG 14+; default: false.
disable_on_error: Option<bool>Disable the subscription on apply error. PG 15+; default: false.
password_required: Option<bool>Whether the subscription owner must supply a password. PG 16+; default: true.
run_as_owner: Option<bool>Run the apply worker as the subscription owner (instead of the table owner). PG 16+; default: false.
origin: Option<OriginMode>Replication origin handling. PG 16+; default: Any.
failover: Option<bool>Whether the subscription survives failover. PG 17+; default: false.
Trait Implementations§
Source§impl Clone for SubscriptionOptions
impl Clone for SubscriptionOptions
Source§fn clone(&self) -> SubscriptionOptions
fn clone(&self) -> SubscriptionOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SubscriptionOptions
impl Debug for SubscriptionOptions
Source§impl Default for SubscriptionOptions
impl Default for SubscriptionOptions
Source§fn default() -> SubscriptionOptions
fn default() -> SubscriptionOptions
Source§impl<'de> Deserialize<'de> for SubscriptionOptions
impl<'de> Deserialize<'de> for SubscriptionOptions
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 SubscriptionOptions
impl PartialEq for SubscriptionOptions
Source§fn eq(&self, other: &SubscriptionOptions) -> bool
fn eq(&self, other: &SubscriptionOptions) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for SubscriptionOptions
impl Serialize for SubscriptionOptions
impl Eq for SubscriptionOptions
impl StructuralPartialEq for SubscriptionOptions
Auto Trait Implementations§
impl Freeze for SubscriptionOptions
impl RefUnwindSafe for SubscriptionOptions
impl Send for SubscriptionOptions
impl Sync for SubscriptionOptions
impl Unpin for SubscriptionOptions
impl UnsafeUnpin for SubscriptionOptions
impl UnwindSafe for SubscriptionOptions
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more