ITADN

eth_subscribe("pendingLogs") silently accepted but never delivers events

#26326Openjaguera-qn 创建于 2026-07-08
C-bugS-needs-triage
J
jaguera-qncommented
### Describe the bug `eth_subscribe("pendingLogs", ...)` is accepted by reth and a valid subscriptionId is returned but no events are ever delivered. The client has no way to distinguish this from "no activity" and waits indefinitely. Additionally, `eth_subscribe("logs", {fromBlock: "pending", toBlock: "pending"})` is also silently accepted, but the pending params are discarded and the subscription behaves as a standard logs subscription, delivering mined block logs instead. ### Steps to reproduce Tested against reth v2.3.0 (reth/v2.3.0-9384bc5/x86_64-unknown-linux-gnu): > 1. "pendingLogs" type, accepted, zero events forever ``` $ wscat -c "wss://optimism.publicnode.com" {"id":1,"jsonrpc":"2.0","method":"eth_subscribe","params":["pendingLogs",{"address":"0x4200000000000000000000000000000000000006","topi cs":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]}]} ``` > ↑ Subscription accepted. No events ever arrive. `{"jsonrpc":"2.0","result":"0x43e42c3aca8759c0a2295256f9e0f162","id":1}` > 2. "logs" with fromBlock/toBlock "pending" , accepted, delivers mined logs ``` {"id":1,"jsonrpc":"2.0","method":"eth_subscribe","params":["logs",{"fromBlock":"pending","toBlock":"pending","address":"0x420000000000 0000000000000000000000000006"}]} {"jsonrpc":"2.0","result":"0x17fb022d6755b639685871cf77b215d7"} {"jsonrpc":"2.0","method":"eth_subscription","params":{"result":{"address":"0x4200...","blockNumber":"0x...","removed":false,...}}} ``` > ↑ Events stream in, but these are mined block logs, "pending" params silently ignored. ### Node logs ```text ``` ### Platform(s) _No response_ ### Container Type Other ### What version/commit are you on? `reth v2.3.0 (reth/v2.3.0-9384bc5/x86_64-unknown-linux-gnu)` ### What database version are you on? Tested against a public reth v2.3.0 node (publicnode.com), db version not accessible. ### Which chain / network are you on? Optimism ### What type of node are you running? Full via --full flag ### What prune config do you use, if any? prune config unknown in publicnode ### If you've built Reth from source, provide the full command you used _No response_ ### Code of Conduct - [x] I agree to follow the Code of Conduct
1 条评论