You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I start a new Besu node and before it has synced I submit a new transaction. This requires the nonce for the sender to be determined, which hits the following NPE because the transaction pool hasn't been initialized yet:
java.lang.NullPointerException: Cannot invoke "org.hyperledger.besu.ethereum.eth.transactions.PendingTransactions.getNextNonceForSender(org.hyperledger.besu.datatypes.Address)" because "this.pendingTransactions" is null
at org.hyperledger.besu.ethereum.eth.transactions.TransactionPool.getNextNonceForSender(TransactionPool.java:539)
at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthGetTransactionCount.pendingResult(EthGetTransactionCount.java:60)
at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.AbstractBlockParameterOrBlockHashMethod.handleParamTypes(AbstractBlockParameterOrBlockHashMethod.java:100)
at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.AbstractBlockParameterOrBlockHashMethod.response(AbstractBlockParameterOrBlockHashMethod.java:151)
at org.hyperledger.besu.ethereum.api.jsonrpc.execution.BaseJsonRpcProcessor.process(BaseJsonRpcProcessor.java:44)
at org.hyperledger.besu.ethereum.api.jsonrpc.execution.TracedJsonRpcProcessor.process(TracedJsonRpcProcessor.java:41)
at org.hyperledger.besu.ethereum.api.jsonrpc.execution.TimedJsonRpcProcessor.process(TimedJsonRpcProcessor.java:45)
at org.hyperledger.besu.ethereum.api.jsonrpc.execution.JsonRpcExecutor.execute(JsonRpcExecutor.java:92)
at org.hyperledger.besu.ethereum.api.handlers.AbstractJsonRpcExecutor.executeRequest(AbstractJsonRpcExecutor.java:87)
at org.hyperledger.besu.ethereum.api.handlers.JsonRpcObjectExecutor.execute(JsonRpcObjectExecutor.java:57)
at org.hyperledger.besu.ethereum.api.handlers.JsonRpcExecutorHandler.lambda$handler$0(JsonRpcExecutorHandler.java:57)
at java.base/java.util.Optional.ifPresentOrElse(Optional.java:196)
at org.hyperledger.besu.ethereum.api.handlers.JsonRpcExecutorHandler.lambda$handler$2(JsonRpcExecutorHandler.java:54)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$1(ContextImpl.java:190)
at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:276)
at io.vertx.core.impl.ContextImpl.lambda$internalExecuteBlocking$2(ContextImpl.java:209)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:833)
^C2024-04-02 16:40:43.003+01:00 | BesuCommand-Shutdown-Hook |
Steps to Reproduce (Bug)
Run besu --genesis-file=genesis.json --profile=enterprise --data-storage-format=FOREST --data-path=./data --rpc-http-enabled
Before the node has synced and started mining blocks, submit a new transaction
Expected behavior:
No NPE. I think the correct behaviour is either a) a suitable error code being returned to the JSON/RPC call or b) the transaction pool accepting the transaction and it being mined when the node has synced.
Description
I start a new Besu node and before it has synced I submit a new transaction. This requires the nonce for the sender to be determined, which hits the following NPE because the transaction pool hasn't been initialized yet:
Steps to Reproduce (Bug)
besu --genesis-file=genesis.json --profile=enterprise --data-storage-format=FOREST --data-path=./data --rpc-http-enabled
Expected behavior:
No NPE. I think the correct behaviour is either a) a suitable error code being returned to the JSON/RPC call or b) the transaction pool accepting the transaction and it being mined when the node has synced.
Actual behavior:
NPE shown above
Frequency:
Always
Versions (Add all that apply)
besu/v24.4-develop-cf5e3dae98/osx-aarch_64/openjdk-java-17
The text was updated successfully, but these errors were encountered: