Transactions

Debug.log:如何分析孤立事務?

  • December 9, 2012

我的機器的 debug.log 在同步時列出了以下資訊

ERROR: FetchInputs() : 5b5e32cc97 mempool Tx prev not found e99babf87a
stored orphan tx 5b5e32cc97 (mapsz 414)
received: tx (227 bytes)
ERROR: FetchInputs() : 93ce7eee97 mempool Tx prev not found 8d56e0b192
stored orphan tx 93ce7eee97 (mapsz 415)
received: tx (259 bytes)
ERROR: FetchInputs() : 7baab3c99a mempool Tx prev not found 2ca8483584
stored orphan tx 7baab3c99a (mapsz 416)
sending: addr (181 bytes)
Flushing wallet.dat
Flushed 12367 addresses to peers.dat  62ms
Flushed wallet.dat 5335ms
  • 說孤立的交易被添加到鏈中,但被另一個塊取代是否正確?
  • 當我下載鏈時,孤立的交易是否會復製到我的客戶端?
  • 我怎樣才能知道孤立的 tx 是否曾經將它變成一個塊?(# 會保持不變嗎?)
  • 什麼是a mapsz,什麼時候重要?

孤兒交易是消耗硬幣的交易,其創建交易不為您的客戶所知。這與孤立塊(其父塊未知的塊,或根據另一種定義,不再是最佳鏈的一部分的塊)無關。

孤兒交易不是區塊的一部分(在知道其父節點之前無法驗證它們,並且區塊中只允許有效交易),並保存在客戶端的記憶體中。當他們的父母被知道並且他們被發現有效時,他們被移動到記憶體池(顧名思義,它也只保存在記憶體中)。從那裡開始,它們被認為包含在新塊中(如果您正在探勘)。

這段 debug.log 告訴您收到了 3 個事務(單獨的事務,不是塊的一部分),它們引用了一些未知的輸入。因此,它們儲存在孤兒池中,孤兒池因此而增長。“mapsz”代表“地圖大小”(因為孤兒儲存在地圖中) - 該數字只是記住的孤兒的數量。

引用自:https://bitcoin.stackexchange.com/questions/5673