Post-clustermempool package RBF: per-chunk processing

Post-clustermempool package RBF: per-chunk processing

Original Postby instagibbs

Posted on: November 15, 2023 18:54 UTC

In the discussion of optimizing validation logic for transaction packages, a consensus emerges around the principle of focusing on evaluating individual chunks of data rather than attempting to process the entire package at once.

This approach prioritizes the identification of the most incentive-compatible transactions while also incorporating DoS (Denial of Service) checks to ensure system integrity. The methodology suggests an initial limitation to a single RBF (Replace-By-Fee) attempt per package, acknowledging that while capturing more RBF scenarios might be ideal, the complexity and resource demands of such checks may necessitate deferral to later enhancements.

The proposed verification process entails a thorough examination of each transaction within a given package against both standard and policy rules, including script verification. Should any transaction within a chunk fail this verification, the process would then proceed to the next chunk without considering the failed one further. Importantly, in instances where a failure is deemed "malicious" — for example, a signature failure — it may be prudent to discard the remainder of the package altogether, mirroring the precautions taken in similar past situations, notably referenced as "like 26711."

This strategy not only simplifies the validation logic by breaking down the package into manageable pieces but also facilitates a more efficient "catch-up" mechanism for the system when dealing with packages that exceed the cluster's capacity. By adopting this per-chunk evaluation framework, the system aims to balance between operational efficiency and the need to safeguard against potential security threats, thereby enhancing the overall reliability and performance of the transaction processing mechanism.