Open
Description
This is a re-open of solana-labs#22710 by @jstarry
Problem
The bank status cache is primarily used to prevent recent transactions from being replayed but is also used by RPC to retrieve the execution status of recent transactions. The status of recent transactions are already stored in blockstore (when enable_rpc_transaction_history
is enabled) so storing the status in memory is redundant.
Proposed Solution
- Migrate from the
BankStatusCache
(which stores the message hash, signature, and status for each transaction) to aRecentTransactionCache
(which only stores message hashes of transactions processed in each fork). - Remove
get_signature_status
methods from Bank and have RPC query blockstore instead
Metadata
Metadata
Assignees
Labels
No labels