-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RPC provider panics when querying a specific block #5913
Comments
@shekhirin this looks like a full node/prune issue reth/crates/primitives/src/block.rs Lines 72 to 73 in f16a22d
panics if this returns None reth/crates/primitives/src/transaction/mod.rs Lines 1007 to 1011 in f16a22d
|
oh I think I know what's happening, we don't have the senders in full node and therefor fallback to dynamic recovery and https://etherscan.io/tx/0x9e6e19637bb625a8ff3d052b7c2fe57dc78c55a15d258d77c43d5a9c160b0384 is pre EIP-2 with a higher s value so recovery fails. with the function above |
Thank you for the quick analysis. On a side note, do you recommend keeping full senders recovery when syncing a node? I wasn't sure about it, does it speed up block receipt queries? |
I'm not sure how big the senders table is on mainnet, but likely not small (quite a few txs...) but having them is faster than recovering them again dynamically, depending on the block (e.g. block with 200 txs would need to recover all txs) |
Reth book says ~75GB. |
I have everything I need, |
Describe the bug
Reth node configured with no pruning of block receipts. See configuration below.
Bug: when querying the RPC provider for
eth_getBlockByNumber
with params["0xb45a", false]
, the provider panicks and does not return the block. All previous block queries were executed correctly, also the next blocks.Error (see panic.log.zip for full trace):
Running on locally built
reth 0.1.0-alpha.13 (cf500610)
usingmaxperf
flags.Command:
RUST_BACKTRACE=full RUST_LOG=debug ./reth node --datadir /var/lib/reth/mainnet --authrpc.addr 127.0.0.1 --authrpc.port 8551 --http -vvvv > panic.log 2>&1
RPC query:
curl -X POST http://localhost:8545 -d '{"method": "eth_getBlockByNumber", "params": ["0xb45a", false], "id": 1, "jsonrpc": "2.0"}' -H "Content-Type: application/json"
Steps to reproduce
Node logs
Platform(s)
Linux (x86)
What version/commit are you on?
reth 0.1.0-alpha.13 (cf50061)
What database version are you on?
Current database version: 1
Local database version: 1
What type of node are you running?
Pruned with custom reth.toml config
What prune config do you use, if any?
If you've built Reth from source, provide the full command you used
cargo build --profile maxperf
Code of Conduct
The text was updated successfully, but these errors were encountered: