pub struct TransactionModes {
pub isolation: Option<IsolationLevel>,
pub read_only: Option<bool>,
pub deferrable: Option<bool>,
}Expand description
v7.39 (round 293, E3 Phase 1) — a row-locking clause.
spg-sql cannot depend on spg-engine, so the strengths and
policies are spelled again here and mapped at the engine boundary.
v7.39 — the modes BEGIN / START TRANSACTION / SET TRANSACTION
/ SET SESSION CHARACTERISTICS accept. read_only used to be parsed
and dropped on the floor, so BEGIN READ ONLY opened an ordinary
read-write transaction and every write in it was accepted.
None on either field means the statement did not name that mode, so
the session default applies — which is not the same as naming the
default explicitly.
Fields§
§isolation: Option<IsolationLevel>§read_only: Option<bool>Some(true) = READ ONLY, Some(false) = READ WRITE.
deferrable: Option<bool>v7.40.12 — Some(true) = DEFERRABLE, Some(false) = NOT
DEFERRABLE. PG reports it through transaction_deferrable, and
consults it only for a SERIALIZABLE READ ONLY transaction, where
it may make the transaction WAIT for a snapshot it can run
against without serialization failures. SPG reports the property
and does not defer; the difference a client can observe is a
wait, never a different answer.
Trait Implementations§
Source§impl Clone for TransactionModes
impl Clone for TransactionModes
Source§fn clone(&self) -> TransactionModes
fn clone(&self) -> TransactionModes
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more