pub enum TransportError {
Http(String),
WebSocket(String),
Rpc(JsonRpcError),
RateLimited {
provider: String,
},
CircuitOpen {
provider: String,
},
AllProvidersDown,
Timeout {
ms: u64,
},
Deserialization(Error),
Overloaded {
queue_depth: usize,
},
Cancelled,
Other(String),
}Expand description
Errors that can occur during an RPC transport operation.
Variants§
Http(String)
HTTP request failed (connection refused, timeout, etc.).
WebSocket(String)
WebSocket connection/send/receive error.
Rpc(JsonRpcError)
JSON-RPC protocol-level error returned by the node.
RateLimited
Rate limit exceeded — caller should back off.
CircuitOpen
Circuit breaker is open — provider is unhealthy.
AllProvidersDown
All providers in the pool are unavailable.
Timeout
Request timed out after the configured duration.
Deserialization(Error)
Response could not be deserialized.
Overloaded
Request rejected due to backpressure — too many in-flight requests.
Cancelled
Operation was cancelled via cancellation token.
Other(String)
An unexpected error.
Implementations§
Source§impl TransportError
impl TransportError
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Returns true if this error is retryable (transient).
Sourcepub fn is_execution_error(&self) -> bool
pub fn is_execution_error(&self) -> bool
Returns true if this is a node-side execution error (not retryable).
Trait Implementations§
Source§impl Debug for TransportError
impl Debug for TransportError
Source§impl Display for TransportError
impl Display for TransportError
Source§impl Error for TransportError
impl Error for TransportError
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 TransportError
impl !RefUnwindSafe for TransportError
impl Send for TransportError
impl Sync for TransportError
impl Unpin for TransportError
impl UnsafeUnpin for TransportError
impl !UnwindSafe for TransportError
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