pub struct PostgresError {
pub sqlstate: Option<String>,
/* private fields */
}Expand description
A Postgres failure that retains its SQLSTATE, so retry decisions are made on the code rather than on rendered text.
SQLSTATE is the documented, stable API; the message is not — it is
localised, it embeds user identifiers (a slot literally named
orders_is_active matched the old substring rule), and a sqlx/server
reword silently removed the restart-race backoff altogether (#654 H8).
Carried inside FaucetError::Custom, which exists for exactly this kind
of connector-specific wrapping.
Fields§
§sqlstate: Option<String>The five-character SQLSTATE, when the server supplied one.
Implementations§
Trait Implementations§
Source§impl Debug for PostgresError
impl Debug for PostgresError
Source§impl Display for PostgresError
impl Display for PostgresError
Source§impl Error for PostgresError
impl Error for PostgresError
1.30.0 · 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 PostgresError
impl RefUnwindSafe for PostgresError
impl Send for PostgresError
impl Sync for PostgresError
impl Unpin for PostgresError
impl UnsafeUnpin for PostgresError
impl UnwindSafe for PostgresError
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