From 613363c250d7fbfd5ac6e3eb1c605ee3157f8155 Mon Sep 17 00:00:00 2001 From: Chulhee Lee Date: Fri, 4 Oct 2024 19:54:33 +0900 Subject: [PATCH] Improve signature verification performance * Efficient signature verification using tx in txpool * This feature can enabled with a flag --tx-pool-tx-fast-verify-signature-enabled=true * There was a performance improvement effect of about 30% * No need to add transaction sender cache space Signed-off-by: Chulhee Lee --- .../cli/options/TransactionPoolOptions.java | 15 ++++++++++ .../controller/IbftBesuControllerBuilder.java | 3 +- .../controller/QbftBesuControllerBuilder.java | 3 +- .../ibft/statemachine/IbftRound.java | 28 ++++++++++++++++++- .../ibft/statemachine/IbftRoundFactory.java | 9 ++++-- .../qbft/statemachine/QbftRound.java | 28 ++++++++++++++++++- .../qbft/statemachine/QbftRoundFactory.java | 9 ++++-- .../besu/ethereum/core/Transaction.java | 28 +++++++------------ .../mainnet/MainnetTransactionProcessor.java | 27 ++++++++++-------- .../eth/transactions/TransactionPool.java | 8 ++++++ .../TransactionPoolConfiguration.java | 6 ++++ 11 files changed, 126 insertions(+), 38 deletions(-) diff --git a/besu/src/main/java/org/hyperledger/besu/cli/options/TransactionPoolOptions.java b/besu/src/main/java/org/hyperledger/besu/cli/options/TransactionPoolOptions.java index 6d1a6141ef..87bc7fe4c5 100644 --- a/besu/src/main/java/org/hyperledger/besu/cli/options/TransactionPoolOptions.java +++ b/besu/src/main/java/org/hyperledger/besu/cli/options/TransactionPoolOptions.java @@ -61,6 +61,8 @@ public class TransactionPoolOptions implements CLIOptions