pub struct ClientSession {
pub id: Uuid,
pub client_addr: SocketAddr,
pub current_node: RwLock<Option<String>>,
pub tx_state: RwLock<TransactionState>,
pub variables: RwLock<HashMap<String, String>>,
pub created_at: DateTime<Utc>,
pub tr_mode: TrMode,
pub pool_client_id: ClientId,
pub plugin_identity: RwLock<Option<Identity>>,
}Expand description
Client session
Fields§
§id: UuidSession ID
client_addr: SocketAddrClient address
current_node: RwLock<Option<String>>Current backend node
tx_state: RwLock<TransactionState>Transaction state
variables: RwLock<HashMap<String, String>>Session variables
created_at: DateTime<Utc>Created at
tr_mode: TrModeTR mode for this session
pool_client_id: ClientIdClient ID for pool-modes lease tracking
plugin_identity: RwLock<Option<Identity>>Identity returned by an Authenticate plugin, if any. Downstream
plugins (masking, residency routing, cost governor) read this to
gate per-user policy. None when no plugin ran or every plugin
deferred to the default auth flow.
Auto Trait Implementations§
impl !Freeze for ClientSession
impl !RefUnwindSafe for ClientSession
impl Send for ClientSession
impl Sync for ClientSession
impl Unpin for ClientSession
impl UnsafeUnpin for ClientSession
impl !UnwindSafe for ClientSession
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> 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 more