#[non_exhaustive]pub enum ConnectionError {
TcpConnect {
host: String,
port: u16,
source: Error,
},
DnsResolution {
address: String,
source: Error,
},
SocketConfig {
operation: String,
source: Error,
},
AuthenticationFailed {
backend: String,
response: String,
},
InvalidGreeting {
backend: String,
greeting: String,
},
PoolExhausted {
backend: String,
max_size: usize,
},
StaleConnection {
backend: String,
reason: String,
},
IoError(Error),
TlsHandshake {
backend: String,
source: Box<dyn Error + Send + Sync>,
},
CertificateVerification {
backend: String,
reason: String,
},
}Expand description
Errors that can occur during connection management
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
TcpConnect
TCP connection failed
DnsResolution
DNS resolution failed
SocketConfig
Socket configuration failed (buffer sizes, keepalive, etc.)
AuthenticationFailed
Backend authentication failed
InvalidGreeting
Invalid or unexpected greeting from backend
PoolExhausted
Connection pool exhausted
StaleConnection
Connection is stale or broken
IoError(Error)
I/O error during communication
TlsHandshake
TLS handshake failed
CertificateVerification
Certificate verification failed
Implementations§
Source§impl ConnectionError
impl ConnectionError
Sourcepub fn is_client_disconnect(&self) -> bool
pub fn is_client_disconnect(&self) -> bool
Check if this is a client disconnection (broken pipe)
Sourcepub const fn is_authentication_error(&self) -> bool
pub const fn is_authentication_error(&self) -> bool
Check if this is an authentication error
Sourcepub const fn is_network_error(&self) -> bool
pub const fn is_network_error(&self) -> bool
Check if this is a network connectivity error
Trait Implementations§
Source§impl Debug for ConnectionError
impl Debug for ConnectionError
Source§impl Display for ConnectionError
impl Display for ConnectionError
Source§impl Error for ConnectionError
impl Error for ConnectionError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for ConnectionError
impl !RefUnwindSafe for ConnectionError
impl Send for ConnectionError
impl Sync for ConnectionError
impl Unpin for ConnectionError
impl !UnwindSafe for ConnectionError
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