Enum solana_sdk::transaction::TransactionError [−][src]
Reasons a transaction might be rejected.
Variants
An account is already being processed in another transaction in a way that does not support parallelism
A Pubkey
appears twice in the transaction’s account_keys
. Instructions can reference
Pubkey
s more than once but the message must contain a list with no duplicate keys
Attempt to debit an account but found no record of a prior credit.
Attempt to load a program that does not exist
The from Pubkey
does not have sufficient balance to pay the fee to schedule the transaction
This account may not be used to pay transaction fees
The bank has seen this Signature
before. This can occur under normal operation
when a UDP packet is duplicated, as a user error from a client not updating
its recent_blockhash
, or as a double-spend attack.
The bank has not seen the given recent_blockhash
or the transaction is too old and
the recent_blockhash
has been discarded.
InstructionError(u8, InstructionError)
An error occurred while processing an instruction. The first element of the tuple indicates the instruction index in which the error occurred.
Loader call chain is too deep
Transaction requires a fee but has no signature present
Transaction contains an invalid account reference
Transaction did not pass signature verification
This program may not be used for executing instructions
Transaction failed to sanitize accounts offsets correctly implies that account locks are not taken for this TX, and should not be unlocked.
Trait Implementations
impl Clone for TransactionError
[src]
fn clone(&self) -> TransactionError
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for TransactionError
[src]
impl<'de> Deserialize<'de> for TransactionError
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Display for TransactionError
[src]
impl Eq for TransactionError
[src]
impl Error for TransactionError
[src]
pub fn source(&self) -> Option<&(dyn Error + 'static)>
1.30.0[src]
pub fn backtrace(&self) -> Option<&Backtrace>
[src]
pub fn description(&self) -> &str
1.0.0[src]
pub fn cause(&self) -> Option<&dyn Error>
1.0.0[src]
impl From<SanitizeError> for TransactionError
[src]
fn from(_: SanitizeError) -> Self
[src]
impl From<TransactionError> for SignerError
[src]
fn from(source: TransactionError) -> Self
[src]
impl From<TransactionError> for TransportError
[src]
fn from(source: TransactionError) -> Self
[src]
impl PartialEq<TransactionError> for TransactionError
[src]
fn eq(&self, other: &TransactionError) -> bool
[src]
fn ne(&self, other: &TransactionError) -> bool
[src]
impl Serialize for TransactionError
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralEq for TransactionError
[src]
impl StructuralPartialEq for TransactionError
[src]
Auto Trait Implementations
impl RefUnwindSafe for TransactionError
impl Send for TransactionError
impl Sync for TransactionError
impl Unpin for TransactionError
impl UnwindSafe for TransactionError
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> AsErrorSource for T where
T: 'static + Error,
[src]
T: 'static + Error,
pub fn as_error_source(&self) -> &(dyn Error + 'static)
[src]
impl<T> AsFail for T where
T: Fail,
[src]
T: Fail,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<E> Fail for E where
E: 'static + Error + Send + Sync,
[src]
E: 'static + Error + Send + Sync,
pub fn name(&self) -> Option<&str>
[src]
pub fn cause(&self) -> Option<&(dyn Fail + 'static)>
[src]
pub fn backtrace(&self) -> Option<&Backtrace>
[src]
pub fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
[src]
D: Display + Send + Sync + 'static,
pub fn compat(self) -> Compat<Self>
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> MaybeDebug for T where
T: Debug,
[src]
T: Debug,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Typeable for T where
T: Any,
T: Any,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,