pub struct WirePoolable(pub WireConn);Expand description
Newtype wrapper around pg_wired::WireConn that implements Poolable.
Tuple Fields§
§0: WireConnMethods from Deref<Target = WireConn>§
Sourcepub fn pid(&self) -> i32
pub fn pid(&self) -> i32
Backend process ID assigned by the server. Useful for logging and for
building a cancel token. The secret key that pairs with this PID is
intentionally not exposed; use cancel_token() to obtain a token that
can send a cancel request.
Sourcepub fn auth_mechanism(&self) -> &'static str
pub fn auth_mechanism(&self) -> &'static str
Authentication mechanism the server selected during startup.
Returns one of "trust", "cleartext", "md5", "SCRAM-SHA-256",
or "SCRAM-SHA-256-PLUS". "SCRAM-SHA-256-PLUS" confirms that
tls-server-end-point channel binding was negotiated.
Sourcepub fn has_pending_data(&self) -> bool
pub fn has_pending_data(&self) -> bool
Check if the connection has unconsumed data in the receive buffer.
Sourcepub async fn send_raw(&mut self, buf: &[u8]) -> Result<(), PgWireError>
pub async fn send_raw(&mut self, buf: &[u8]) -> Result<(), PgWireError>
Send a raw buffer to the server (one write syscall).
Sourcepub async fn recv_msg(&mut self) -> Result<BackendMsg, PgWireError>
pub async fn recv_msg(&mut self) -> Result<BackendMsg, PgWireError>
Read one complete backend message from the connection. Uses an internal buffer to minimize read() syscalls.
Sourcepub async fn collect_rows(
&mut self,
) -> Result<(Vec<RawRow>, String), PgWireError>
pub async fn collect_rows( &mut self, ) -> Result<(Vec<RawRow>, String), PgWireError>
Receive messages until ReadyForQuery, collecting DataRows. Returns (rows, command_tag).
Sourcepub async fn describe_statement(
&mut self,
sql: &str,
) -> Result<(Vec<u32>, Vec<FieldDescription>), PgWireError>
pub async fn describe_statement( &mut self, sql: &str, ) -> Result<(Vec<u32>, Vec<FieldDescription>), PgWireError>
Describe a SQL statement: sends Parse + Describe Statement + Sync, returns (parameter type OIDs, column field descriptions). Used by compile-time query checking macros.
Sourcepub async fn drain_until_ready(&mut self) -> Result<(), PgWireError>
pub async fn drain_until_ready(&mut self) -> Result<(), PgWireError>
Drain messages until ReadyForQuery (error recovery). Also attempts to parse any remaining data in the receive buffer before declaring the connection closed.
Trait Implementations§
Source§impl Deref for WirePoolable
impl Deref for WirePoolable
Source§impl DerefMut for WirePoolable
impl DerefMut for WirePoolable
Source§impl Poolable for WirePoolable
impl Poolable for WirePoolable
Source§type Error = PgWireError
type Error = PgWireError
Source§async fn connect(
addr: &str,
user: &str,
password: &str,
database: &str,
) -> Result<Self, Self::Error>
async fn connect( addr: &str, user: &str, password: &str, database: &str, ) -> Result<Self, Self::Error>
Source§fn has_pending_data(&self) -> bool
fn has_pending_data(&self) -> bool
Source§fn reset(&self) -> impl Future<Output = bool> + Send
fn reset(&self) -> impl Future<Output = bool> + Send
DISCARD ALL or equivalent to clear
session state (transactions, SET variables, temp tables, prepared statements).
Returns false if the reset failed and the connection should be destroyed. Read more