Go-Ethereum

為什麼我的節點同步在塊 2,306,843 卡住/非常慢?

  • April 22, 2018

使用 macOS 10.12.1 和 Ethereum Wallet 0.8.7,節點已連接,但同步甚至沒有啟動。卡在 2,306,843 區塊。

我能做些什麼?請記住,我既不是程序員也不是技術極客。

2017 年 3 月 5 日更新

Vitalik Buterin 在 2016 年 11 月 29 日 23:07 的推文State clearing 100% Complete 中宣布了狀態清理。這次對應於區塊2,718,436

清算合約可在0xe9c9068240d8450da314f60804debfc194b72309找到。清算狀態涉及超過 10,000 筆交易。Sweeper.sol 的第一筆交易是在交易0x884d0fc7 的第 2,675,055 塊。Sweeper.sol 的最後一筆交易是在交易0x6b651cfd…的區塊2,700,301處。

Sweeper.sol 合約可以在0xa43ebd8939d8328f5858119a3fb65f65c864c6dd找到。清算狀態涉及交易35370筆。第一個狀態清算交易是在交易0x884d0fc7中的塊2,675,055 …。最後一次狀態清算交易是在交易0xbf78cc00…中的區塊2,717,576

您可以看到下面的每日gasUsed圖表顯示了狀態清除期間gasUsed的增加:

在此處輸入圖像描述

區塊2,686,351 中的一項狀態清除操作觸發了共識錯誤,geth導致區塊鏈中的網路分叉。這是因為與 Parity 相比,其中一個狀態清除操作中的行為產生了不同的狀態。

A state clearing FAQ後的一些進一步資訊。


您的區塊鏈目前正在與包含最近低 gas 價格網路攻擊的區塊數據同步,其中以下交易類型發生在區塊內:

  • 2,283,397 到 2,301,372 -geth記憶體崩潰事務。geth客戶端在處理這些事務時崩潰。此問題已在gethFrom Shanghai, with love (1.4.12)中修復。
  • 2,283,416 到 2,379,641 -EXTCODESIZE由於處理每筆交易需要約 50,000 次磁碟提取,呼叫操作碼的低 gas 價格垃圾郵件交易需要 20-60 秒來驗證。
  • 2,421,507 到 2,463,130 - 創建了 1900 萬個空賬戶的賬戶膨脹交易。這會導致節點客戶端變慢,因為許多帳戶無法保存在記憶體中,需要從磁碟緩慢重新檢索。
  • 2,468,209 到 2,474,792 - 低影響交易垃圾郵件。
  • 2,550,666 到 2,551,428 - 低影響交易垃圾郵件繼續 - 來自完整存檔節點同步日誌。
  • 2,619,660 至 2,620,384 - 同上。

請注意,從第4 次硬分叉發生時的 #2,675,000 開始,由於節點客戶端正在清除由賬戶膨脹交易創建的空賬戶,同步速度變慢。來自是否有新的 DOS 攻擊?我正在執行 geth 1.5.2,早上開始執行後,我看到塊處理時間非常慢,無法趕上網路。在硬分叉之前完美執行。到底是怎麼回事?

這是按預期工作的狀態清除過程。它看起來像一個 DoS,因為它通過零值呼叫每個帳戶來“戳”大約 2000 萬個帳戶,並且每次呼叫都會導致協議注意到該帳戶是空的,從而將其從狀態中刪除。從狀態中刪除帳戶的過程需要 O(log(n)) 磁碟寫入,但零值呼叫僅花費 700 gas,因此這些交易的處理時間比平時要長。

請注意,我們本可以實施的任何狀態清除機制仍然需要刪除這 2000 萬個帳戶,因此不幸的是,這是一個不可避免的臨時副作用;如果使用者發現目前級別太難處理,我們可以調低程序的速度,但這會增加垃圾郵件的持續時間。

唯一的方法是戳空賬戶,一旦所有約 2000 萬個空賬戶都被戳了,就不能再這樣做了;對帳戶樹的所有修改每次修改將花費至少 5700 gas。

與具有固態驅動器 (SSD) 的電腦相比,具有硬碟驅動器 (HDD) 的電腦速度更慢。具有 4Gb RAM + 4Gb 交換磁碟或更少的電腦也受到更大的打擊,節點客戶端崩潰。

您的選擇是:

  • 如果您使用的是 HDD,並且您可以升級到 SSD,請執行此操作並重新同步。
  • 如果您有 4Gb 或更少的 RAM,請考慮增加您的 RAM。
  • 等到下一個旨在清理空賬戶的硬分叉(幾週後)。最新更新$$ UPDATE $$硬分叉塊數延遲$$ 10/31/2016 $$.
  • 讓您的電腦保持開啟並同步,然後等待塊慢慢同步。
  • 刪除您的舊區塊鏈數據,然後乙太坊錢包將執行快速同步,無需完全驗證這些垃圾郵件交易中的每一個。有關刪除舊區塊鏈數據的更多資訊,請參閱此內容。
  • 使用 Parity 作為您的節點客戶端,其--geth參數將允許乙太坊錢包或 Mist 與其通信。請參閱將 Parity 與 Mist 一起使用。Parity 的同步速度比geth乙太坊錢包 / Mist 的插入式替代節點客戶端快得多。
  • 使用 Parity 作為您的節點客戶端,它是內置錢包,可從您的 Web 瀏覽器通過 URL http://localhost:8080/訪問。請參閱基本用法

參考:


2016 年 11 月 23 日更新 - 完全同步的一些結果

完全同步的以下輸出顯示了在帳戶膨脹交易攻擊塊結束後同步速度提高,並在低影響交易垃圾郵件攻擊塊期間再次減慢。geth可以在此處找到來自完整節點同步的更多日誌:

I1123 20:10:27.966288 core/blockchain.go:1042] imported 105 blocks,   846 txs ( 26.974 Mg) in    8.000s ( 3.372 Mg/s). #2463222 [c616292b… / fe945232…]
I1123 20:10:36.011591 core/blockchain.go:1042] imported 119 blocks,  1188 txs ( 34.790 Mg) in    8.045s ( 4.324 Mg/s). #2463341 [fe945232… / 64ce6572…]
I1123 20:10:44.034226 core/blockchain.go:1042] imported 188 blocks,  1394 txs ( 45.197 Mg) in    8.022s ( 5.634 Mg/s). #2463529 [64ce6572… / 2fd1bbee…]
I1123 20:10:52.045388 core/blockchain.go:1042] imported 121 blocks,  1200 txs ( 38.763 Mg) in    8.011s ( 4.839 Mg/s). #2463650 [2fd1bbee… / a65ca251…]
I1123 20:11:00.144871 core/blockchain.go:1042] imported 144 blocks,  1111 txs ( 39.831 Mg) in    8.099s ( 4.918 Mg/s). #2463794 [a65ca251… / df55fd2f…]
I1123 20:11:08.853652 core/blockchain.go:1042] imported 133 blocks,  1769 txs ( 57.122 Mg) in    8.708s ( 6.559 Mg/s). #2463927 [df55fd2f… / c2da897f…]
I1123 20:11:16.858079 core/blockchain.go:1042] imported 118 blocks,  1484 txs ( 50.059 Mg) in    8.004s ( 6.254 Mg/s). #2464045 [c2da897f… / fa0ee9b6…]
I1123 20:11:24.891666 core/blockchain.go:1042] imported 142 blocks,  1774 txs ( 59.263 Mg) in    8.033s ( 7.377 Mg/s). #2464187 [fa0ee9b6… / be4707f0…]
I1123 20:11:33.056684 core/blockchain.go:1042] imported 110 blocks,  1447 txs ( 45.366 Mg) in    8.165s ( 5.556 Mg/s). #2464297 [be4707f0… / 367c9f67…]
I1123 20:11:41.077283 core/blockchain.go:1042] imported 50 blocks,   888 txs ( 22.434 Mg) in    8.020s ( 2.797 Mg/s). #2464347 [367c9f67… / 687793e1…]
I1123 20:11:49.108136 core/blockchain.go:1042] imported 106 blocks,  1261 txs ( 33.328 Mg) in    8.030s ( 4.150 Mg/s). #2464453 [687793e1… / a7efb44e…]
I1123 20:11:57.682912 core/blockchain.go:1042] imported 120 blocks,  1182 txs ( 32.885 Mg) in    8.574s ( 3.835 Mg/s). #2464573 [a7efb44e… / 93f49e76…]
I1123 20:12:05.882500 core/blockchain.go:1042] imported 105 blocks,  1686 txs ( 51.832 Mg) in    8.199s ( 6.321 Mg/s). #2464678 [93f49e76… / 7f5245a6…]
I1123 20:12:13.888274 core/blockchain.go:1042] imported 72 blocks,  1497 txs ( 46.792 Mg) in    8.005s ( 5.845 Mg/s). #2464750 [7f5245a6… / e5b7e73c…]
I1123 20:12:22.049633 core/blockchain.go:1042] imported 74 blocks,  1838 txs ( 54.806 Mg) in    8.161s ( 6.715 Mg/s). #2464824 [e5b7e73c… / 1a2bda23…]
I1123 20:12:23.967461 core/blockchain.go:1042] imported 16 blocks,   425 txs ( 12.840 Mg) in    1.917s ( 6.695 Mg/s). #2464840 [1a2bda23… / a4d6a2bc…]
I1123 20:12:31.991847 core/blockchain.go:1042] imported 52 blocks,   834 txs ( 29.643 Mg) in    8.016s ( 3.698 Mg/s). #2464892 [12c408c2… / 4edfa863…]
I1123 20:12:39.992375 core/blockchain.go:1042] imported 109 blocks,  1341 txs ( 47.473 Mg) in    8.000s ( 5.934 Mg/s). #2465001 [4edfa863… / fa9751ef…]
I1123 20:12:48.014498 core/blockchain.go:1042] imported 164 blocks,  1453 txs ( 60.549 Mg) in    8.022s ( 7.548 Mg/s). #2465165 [fa9751ef… / c989b88e…]
I1123 20:12:56.111777 core/blockchain.go:1042] imported 122 blocks,  1591 txs ( 67.726 Mg) in    8.097s ( 8.364 Mg/s). #2465287 [c989b88e… / f61223e6…]
I1123 20:13:04.130672 core/blockchain.go:1042] imported 202 blocks,  1709 txs ( 85.518 Mg) in    8.018s (10.665 Mg/s). #2465489 [f61223e6… / 3af6790f…]
I1123 20:13:12.140467 core/blockchain.go:1042] imported 272 blocks,  1907 txs (101.256 Mg) in    8.009s (12.642 Mg/s). #2465761 [3af6790f… / 3d313f82…]
I1123 20:13:20.140735 core/blockchain.go:1042] imported 262 blocks,  2337 txs (124.650 Mg) in    8.000s (15.581 Mg/s). #2466023 [3d313f82… / 88ac88a2…]
I1123 20:13:28.425315 core/blockchain.go:1042] imported 262 blocks,  2222 txs (134.302 Mg) in    8.284s (16.211 Mg/s). #2466285 [88ac88a2… / 22ece3d2…]
I1123 20:13:36.718691 core/blockchain.go:1042] imported 73 blocks,  1780 txs ( 46.152 Mg) in    8.293s ( 5.565 Mg/s). #2466358 [22ece3d2… / df9cda17…]
I1123 20:13:44.724916 core/blockchain.go:1042] imported 176 blocks,  1659 txs ( 56.701 Mg) in    8.006s ( 7.082 Mg/s). #2466534 [df9cda17… / cdd18871…]
I1123 20:13:52.735020 core/blockchain.go:1042] imported 351 blocks,  1896 txs ( 71.993 Mg) in    8.010s ( 8.988 Mg/s). #2466885 [cdd18871… / dfa67df6…]
I1123 20:13:52.879160 core/blockchain.go:1042] imported 3 blocks,    64 txs (  0.525 Mg) in 144.144ms ( 3.642 Mg/s). #2466888 [dfa67df6… / 87ca9736…]
I1123 20:14:01.017302 core/blockchain.go:1042] imported 186 blocks,  1584 txs ( 48.823 Mg) in    8.131s ( 6.004 Mg/s). #2467074 [e13b5025… / fb837146…]
I1123 20:14:09.050383 core/blockchain.go:1042] imported 35 blocks,  1476 txs ( 34.768 Mg) in    8.033s ( 4.328 Mg/s). #2467109 [fb837146… / 94b49f56…]
I1123 20:14:17.065023 core/blockchain.go:1042] imported 345 blocks,  1688 txs ( 63.117 Mg) in    8.014s ( 7.875 Mg/s). #2467454 [94b49f56… / 48f9ac8e…]
I1123 20:14:25.157649 core/blockchain.go:1042] imported 372 blocks,  1478 txs ( 75.912 Mg) in    8.092s ( 9.380 Mg/s). #2467826 [48f9ac8e… / 1d0a3170…]
I1123 20:14:33.531035 core/blockchain.go:1042] imported 383 blocks,  1512 txs ( 90.980 Mg) in    8.373s (10.865 Mg/s). #2468209 [1d0a3170… / 0810e44e…]
I1123 20:14:42.139109 core/blockchain.go:1042] imported 71 blocks,   295 txs ( 38.829 Mg) in    8.608s ( 4.511 Mg/s). #2468280 [0810e44e… / 48dfb626…]
I1123 20:14:50.643369 core/blockchain.go:1042] imported 18 blocks,   178 txs ( 32.282 Mg) in    8.504s ( 3.796 Mg/s). #2468298 [48dfb626… / cf9a853c…]
I1123 20:14:58.677977 core/blockchain.go:1042] imported 21 blocks,   366 txs ( 33.985 Mg) in    8.034s ( 4.230 Mg/s). #2468319 [cf9a853c… / a2f2c832…]
I1123 20:15:07.211879 core/blockchain.go:1042] imported 25 blocks,   321 txs ( 31.820 Mg) in    8.533s ( 3.729 Mg/s). #2468344 [a2f2c832… / d40e6bff…]
I1123 20:15:15.291535 core/blockchain.go:1042] imported 40 blocks,   199 txs ( 32.407 Mg) in    8.079s ( 4.011 Mg/s). #2468384 [d40e6bff… / afb38f04…]
I1123 20:15:23.888700 core/blockchain.go:1042] imported 32 blocks,   241 txs ( 32.785 Mg) in    8.597s ( 3.813 Mg/s). #2468416 [afb38f04… / 777691ae…]
I1123 20:15:32.611002 core/blockchain.go:1042] imported 39 blocks,   229 txs ( 35.176 Mg) in    8.722s ( 4.033 Mg/s). #2468455 [777691ae… / 0233d4a9…]
I1123 20:15:40.999610 core/blockchain.go:1042] imported 32 blocks,   215 txs ( 31.990 Mg) in    8.388s ( 3.813 Mg/s). #2468487 [0233d4a9… / a5c0b3f5…]
I1123 20:15:49.003363 core/blockchain.go:1042] imported 23 blocks,   146 txs ( 27.733 Mg) in    8.003s ( 3.465 Mg/s). #2468510 [a5c0b3f5… / eee46cd5…]
I1123 20:15:58.055329 core/blockchain.go:1042] imported 25 blocks,   140 txs ( 30.918 Mg) in    9.051s ( 3.416 Mg/s). #2468535 [eee46cd5… / b602d4fd…]
I1123 20:16:06.683331 core/blockchain.go:1042] imported 20 blocks,   142 txs ( 32.333 Mg) in    8.628s ( 3.748 Mg/s). #2468555 [b602d4fd… / 3e227bc8…]
I1123 20:16:15.561694 core/blockchain.go:1042] imported 28 blocks,   203 txs ( 31.675 Mg) in    8.878s ( 3.568 Mg/s). #2468583 [3e227bc8… / 3d69d1f4…]
I1123 20:16:23.703654 core/blockchain.go:1042] imported 13 blocks,   155 txs ( 25.326 Mg) in    8.141s ( 3.111 Mg/s). #2468596 [3d69d1f4… / 5123b504…]
I1123 20:16:31.789138 core/blockchain.go:1042] imported 24 blocks,   181 txs ( 33.079 Mg) in    8.085s ( 4.091 Mg/s). #2468620 [5123b504… / 02a2ba0b…]
I1123 20:16:40.192777 core/blockchain.go:1042] imported 38 blocks,   210 txs ( 34.546 Mg) in    8.403s ( 4.111 Mg/s). #2468658 [02a2ba0b… / 7974dacd…]

以下輸出顯示了低影響交易垃圾郵件攻擊塊後同步速度的提高:

I1124 01:04:19.068991 core/blockchain.go:1042] imported 5 blocks,    52 txs (  2.233 Mg) in    8.827s ( 0.253 Mg/s). #2474655 [e6538055… / eea6dea1…]
I1124 01:04:27.308275 core/blockchain.go:1042] imported 1 blocks,    15 txs (  1.476 Mg) in    8.239s ( 0.179 Mg/s). #2474656 [a8f76648…]
I1124 01:04:44.682904 core/blockchain.go:1042] imported 4 blocks,    40 txs (  1.947 Mg) in   17.374s ( 0.112 Mg/s). #2474660 [a8f76648… / d0b6d7a1…]
I1124 01:05:18.012660 core/blockchain.go:1042] imported 1 blocks,    29 txs (  1.568 Mg) in   33.329s ( 0.047 Mg/s). #2474661 [e408f930…]
I1124 01:05:50.303563 core/blockchain.go:1042] imported 23 blocks,   222 txs (  5.848 Mg) in   32.290s ( 0.181 Mg/s). #2474684 [e408f930… / 45a21a9a…]
I1124 01:05:58.533517 core/blockchain.go:1042] imported 39 blocks,   533 txs ( 13.108 Mg) in    8.229s ( 1.593 Mg/s). #2474723 [45a21a9a… / 3fbc7621…]
I1124 01:06:08.073414 core/blockchain.go:1042] imported 3 blocks,    53 txs (  1.898 Mg) in    9.539s ( 0.199 Mg/s). #2474726 [3fbc7621… / a496ad25…]
I1124 01:06:22.011190 core/blockchain.go:1042] imported 4 blocks,    35 txs (  2.834 Mg) in   13.937s ( 0.203 Mg/s). #2474730 [a496ad25… / 09b622ec…]
I1124 01:06:30.460992 core/blockchain.go:1042] imported 5 blocks,    56 txs (  2.821 Mg) in    8.449s ( 0.334 Mg/s). #2474735 [09b622ec… / b627e318…]
I1124 01:06:39.170590 core/blockchain.go:1042] imported 13 blocks,    71 txs (  2.581 Mg) in    8.709s ( 0.296 Mg/s). #2474748 [b627e318… / f28519bd…]
I1124 01:06:51.495202 core/blockchain.go:1042] imported 17 blocks,   240 txs (  7.728 Mg) in   12.324s ( 0.627 Mg/s). #2474765 [f28519bd… / db2834dc…]
I1124 01:07:01.042784 core/blockchain.go:1042] imported 20 blocks,   213 txs (  6.948 Mg) in    9.547s ( 0.728 Mg/s). #2474785 [db2834dc… / 1cfa931e…]
I1124 01:07:13.004212 core/blockchain.go:1042] imported 5 blocks,    33 txs (  3.086 Mg) in   11.961s ( 0.258 Mg/s). #2474790 [1cfa931e… / a082654e…]
I1124 01:07:21.120528 core/blockchain.go:1042] imported 159 blocks,  1346 txs ( 40.776 Mg) in    8.116s ( 5.024 Mg/s). #2474949 [a082654e… / ab0ff686…]
I1124 01:07:28.858860 core/blockchain.go:1042] imported 131 blocks,  1244 txs ( 39.997 Mg) in    7.738s ( 5.169 Mg/s). #2475080 [ab0ff686… / cb13b02f…]
I1124 01:07:37.085006 core/blockchain.go:1042] imported 120 blocks,  1186 txs ( 31.406 Mg) in    8.160s ( 3.848 Mg/s). #2475200 [7187e832… / 7ac46f03…]
I1124 01:07:45.103519 core/blockchain.go:1042] imported 142 blocks,  1697 txs ( 42.202 Mg) in    8.018s ( 5.263 Mg/s). #2475342 [7ac46f03… / 5d5c85da…]
I1124 01:07:53.420140 core/blockchain.go:1042] imported 263 blocks,  1411 txs ( 38.311 Mg) in    8.316s ( 4.607 Mg/s). #2475605 [5d5c85da… / 448dc356…]
I1124 01:08:01.424666 core/blockchain.go:1042] imported 239 blocks,  2191 txs ( 60.084 Mg) in    8.004s ( 7.506 Mg/s). #2475844 [448dc356… / b1577b08…]
I1124 01:08:09.506521 core/blockchain.go:1042] imported 375 blocks,  1999 txs ( 53.716 Mg) in    8.081s ( 6.646 Mg/s). #2476219 [b1577b08… / 392ae03e…]
I1124 01:08:17.710115 core/blockchain.go:1042] imported 74 blocks,  1736 txs ( 39.324 Mg) in    8.203s ( 4.793 Mg/s). #2476293 [392ae03e… / f635d6ea…]
I1124 01:08:25.725640 core/blockchain.go:1042] imported 156 blocks,  2193 txs ( 52.269 Mg) in    8.015s ( 6.521 Mg/s). #2476449 [f635d6ea… / c344899d…]

實際上,只需刪除您的區塊鏈並再次同步即可。區塊鏈膨脹已經被刪除。

  1. 停止您的節點和/或關閉您的乙太坊錢包。
  2. 刪除鏈數據。
  • 平價它在~/.parity/906a34e69aec8c0d/*
  • 因為它在~/.ethereum/chaindata/*
  1. 重新同步整個鏈(這比手動等待通過膨脹更快。
  • 平價是parity --warp
  • 對於geth來說geth --fast
  1. 再次啟動你的乙太坊錢包。

利潤。

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