pub struct EnhancedPostgresConfig {Show 18 fields
pub primary_url: String,
pub pool: PostgresPoolConfig,
pub ssl: PostgresSslConfig,
pub replicas: Option<PostgresReplicaConfig>,
pub default_isolation_level: IsolationLevel,
pub table_name: String,
pub schema_name: String,
pub enable_prepared_statements: bool,
pub prepared_statement_cache_size: usize,
pub partition_strategy: Option<PartitionStrategy>,
pub retention_policy: RetentionPolicy,
pub query_timeout: Duration,
pub max_retries: u32,
pub retry_backoff: Duration,
pub enable_slow_query_log: bool,
pub slow_query_threshold: Duration,
pub log_statements: bool,
pub enable_metrics: bool,
}Expand description
Comprehensive PostgreSQL configuration
Fields§
§primary_url: StringPrimary database URL
pool: PostgresPoolConfigConnection pool configuration
ssl: PostgresSslConfigSSL/TLS configuration
replicas: Option<PostgresReplicaConfig>Replica configuration
default_isolation_level: IsolationLevelDefault transaction isolation level
table_name: StringTable name for state storage
schema_name: StringSchema name
enable_prepared_statements: boolEnable prepared statement caching
prepared_statement_cache_size: usizePrepared statement cache size
partition_strategy: Option<PartitionStrategy>Partitioning strategy
retention_policy: RetentionPolicyData retention policy
query_timeout: DurationQuery timeout
max_retries: u32Maximum retry attempts
retry_backoff: DurationRetry backoff base duration
enable_slow_query_log: boolEnable slow query logging
slow_query_threshold: DurationSlow query threshold
log_statements: boolEnable statement logging
enable_metrics: boolEnable metrics collection
Implementations§
Source§impl EnhancedPostgresConfig
impl EnhancedPostgresConfig
pub fn new<S: Into<String>>(primary_url: S) -> Self
pub fn with_pool_config(self, pool: PostgresPoolConfig) -> Self
pub fn with_ssl_config(self, ssl: PostgresSslConfig) -> Self
pub fn with_replicas(self, replicas: PostgresReplicaConfig) -> Self
pub fn with_isolation_level(self, level: IsolationLevel) -> Self
pub fn with_partitioning(self, strategy: PartitionStrategy) -> Self
pub fn with_retention_policy(self, policy: RetentionPolicy) -> Self
Trait Implementations§
Source§impl Clone for EnhancedPostgresConfig
impl Clone for EnhancedPostgresConfig
Source§impl Debug for EnhancedPostgresConfig
impl Debug for EnhancedPostgresConfig
Source§impl Default for EnhancedPostgresConfig
impl Default for EnhancedPostgresConfig
Source§impl<'de> Deserialize<'de> for EnhancedPostgresConfig
impl<'de> Deserialize<'de> for EnhancedPostgresConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for EnhancedPostgresConfig
impl RefUnwindSafe for EnhancedPostgresConfig
impl Send for EnhancedPostgresConfig
impl Sync for EnhancedPostgresConfig
impl Unpin for EnhancedPostgresConfig
impl UnsafeUnpin for EnhancedPostgresConfig
impl UnwindSafe for EnhancedPostgresConfig
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
Converts
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> ⓘ
Converts
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.