pub struct ExternalDatabaseConfig {
pub kind: String,
pub url_env: String,
pub read_url_env: Option<String>,
pub pool_max: Option<u32>,
pub read_only: bool,
pub allow_preview: bool,
pub connect_timeout_secs: Option<u64>,
}Expand description
One external (bring-your-own) SQL database for the handler sql binding. The
connection URL is a secret and is named indirectly (url_env), never written
in the config file.
Fields§
§kind: StringEngine: postgres (aliases postgresql/pg) or mysql (alias
mariadb).
url_env: StringName of the env var holding the connection URL (e.g.
postgres://user:pw@host/db). Required.
read_url_env: Option<String>Optional env var holding a read-replica connection URL. When set,
open-read-only transactions route there; writes stay on url_env.
pool_max: Option<u32>Maximum pooled connections (default 8).
read_only: boolOpen every transaction READ ONLY (the engine rejects writes) — for a
database functions should only read.
allow_preview: boolPermit preview deployments to reach this database. Default false: a
preview is refused, so it can never touch the operator’s live external DB.
connect_timeout_secs: Option<u64>Connection/acquire timeout in seconds (default 10).
Trait Implementations§
Source§impl Clone for ExternalDatabaseConfig
impl Clone for ExternalDatabaseConfig
Source§fn clone(&self) -> ExternalDatabaseConfig
fn clone(&self) -> ExternalDatabaseConfig
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 ExternalDatabaseConfig
impl Debug for ExternalDatabaseConfig
Source§impl Default for ExternalDatabaseConfig
impl Default for ExternalDatabaseConfig
Source§fn default() -> ExternalDatabaseConfig
fn default() -> ExternalDatabaseConfig
Source§impl<'de> Deserialize<'de> for ExternalDatabaseConfigwhere
ExternalDatabaseConfig: Default,
impl<'de> Deserialize<'de> for ExternalDatabaseConfigwhere
ExternalDatabaseConfig: Default,
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>,
Auto Trait Implementations§
impl Freeze for ExternalDatabaseConfig
impl RefUnwindSafe for ExternalDatabaseConfig
impl Send for ExternalDatabaseConfig
impl Sync for ExternalDatabaseConfig
impl Unpin for ExternalDatabaseConfig
impl UnsafeUnpin for ExternalDatabaseConfig
impl UnwindSafe for ExternalDatabaseConfig
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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> ⓘ
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