Go-Ethereum

獲取過去區塊的待處理交易

  • June 19, 2018

我想獲取待處理交易的歷史列表。例如,對於塊號 1,000,000,是否可以獲得此列表?

現在我已經下載了區塊鏈數據高達 1,600,000 塊,但是如果我執行這個:

> eth.getBlock('pending', true).transactions
[]
>

我沒有收到待處理的交易。

這是否意味著geth不在其數據庫中儲存每個塊的待處理事務?如果geth沒有,也許 Parity 做到了???

待處理的交易實際上是目前待處理的交易:它們是每個節點(交易池)記憶體中的交易,等待礦工將其包含到一個塊中。

當一個 tx 包含在一個塊中時,它不再處於待處理狀態。因此,嘗試獲取特定塊號的待處理事務是沒有意義的。

為了給 Giuseppe 的回复添加一些補充,這個答案web3.eth.getBlock('pending')只有在你挖礦時才有意義。

它們不會保留在區塊鏈上。他們“生活”在txpool中。

引用自:https://ethereum.stackexchange.com/questions/51597