Banking Stage drops transactions that'll exceed the total account data size limit (#23537)
This commit is contained in:
@ -45,7 +45,7 @@ enum TransactionErrorType {
|
||||
UNSUPPORTED_VERSION = 18;
|
||||
INVALID_WRITABLE_ACCOUNT = 19;
|
||||
WOULD_EXCEED_MAX_ACCOUNT_COST_LIMIT = 20;
|
||||
WOULD_EXCEED_MAX_ACCOUNT_DATA_COST_LIMIT = 21;
|
||||
WOULD_EXCEED_ACCOUNT_DATA_BLOCK_LIMIT = 21;
|
||||
TOO_MANY_ACCOUNT_LOCKS = 22;
|
||||
ADDRESS_LOOKUP_TABLE_NOT_FOUND = 23;
|
||||
INVALID_ADDRESS_LOOKUP_TABLE_OWNER = 24;
|
||||
@ -53,6 +53,7 @@ enum TransactionErrorType {
|
||||
INVALID_ADDRESS_LOOKUP_TABLE_INDEX = 26;
|
||||
INVALID_RENT_PAYING_ACCOUNT = 27;
|
||||
WOULD_EXCEED_MAX_VOTE_COST_LIMIT = 28;
|
||||
WOULD_EXCEED_ACCOUNT_DATA_TOTAL_LIMIT = 29;
|
||||
}
|
||||
|
||||
message InstructionError {
|
||||
|
@ -703,7 +703,7 @@ impl TryFrom<tx_by_addr::TransactionError> for TransactionError {
|
||||
18 => TransactionError::UnsupportedVersion,
|
||||
19 => TransactionError::InvalidWritableAccount,
|
||||
20 => TransactionError::WouldExceedMaxAccountCostLimit,
|
||||
21 => TransactionError::WouldExceedMaxAccountDataCostLimit,
|
||||
21 => TransactionError::WouldExceedAccountDataBlockLimit,
|
||||
22 => TransactionError::TooManyAccountLocks,
|
||||
23 => TransactionError::AddressLookupTableNotFound,
|
||||
24 => TransactionError::InvalidAddressLookupTableOwner,
|
||||
@ -711,6 +711,7 @@ impl TryFrom<tx_by_addr::TransactionError> for TransactionError {
|
||||
26 => TransactionError::InvalidAddressLookupTableIndex,
|
||||
27 => TransactionError::InvalidRentPayingAccount,
|
||||
28 => TransactionError::WouldExceedMaxVoteCostLimit,
|
||||
29 => TransactionError::WouldExceedAccountDataTotalLimit,
|
||||
_ => return Err("Invalid TransactionError"),
|
||||
})
|
||||
}
|
||||
@ -781,8 +782,8 @@ impl From<TransactionError> for tx_by_addr::TransactionError {
|
||||
TransactionError::WouldExceedMaxAccountCostLimit => {
|
||||
tx_by_addr::TransactionErrorType::WouldExceedMaxAccountCostLimit
|
||||
}
|
||||
TransactionError::WouldExceedMaxAccountDataCostLimit => {
|
||||
tx_by_addr::TransactionErrorType::WouldExceedMaxAccountDataCostLimit
|
||||
TransactionError::WouldExceedAccountDataBlockLimit => {
|
||||
tx_by_addr::TransactionErrorType::WouldExceedAccountDataBlockLimit
|
||||
}
|
||||
TransactionError::TooManyAccountLocks => {
|
||||
tx_by_addr::TransactionErrorType::TooManyAccountLocks
|
||||
@ -805,6 +806,9 @@ impl From<TransactionError> for tx_by_addr::TransactionError {
|
||||
TransactionError::WouldExceedMaxVoteCostLimit => {
|
||||
tx_by_addr::TransactionErrorType::WouldExceedMaxVoteCostLimit
|
||||
}
|
||||
TransactionError::WouldExceedAccountDataTotalLimit => {
|
||||
tx_by_addr::TransactionErrorType::WouldExceedAccountDataTotalLimit
|
||||
}
|
||||
} as i32,
|
||||
instruction_error: match transaction_error {
|
||||
TransactionError::InstructionError(index, ref instruction_error) => {
|
||||
|
Reference in New Issue
Block a user