概述
2021年 7 月 21 日,OpenEthereum 團隊注意到他們在 Ropsten 上的節點卡在了區塊 10679538 處。人們原以為這是 OpenEthereum 的問題。其實,問題真正出在 go-ethereum 實現檢查 1559 交易發送方余額的方式上。一個無效交易(發送方余額只夠支付交易實際使用的 gas,而非交易指定的 maxFeePerGas 總額)被打包進了區塊。由于 Ropsten 礦工運行的都是 go-ethereum,這個區塊隨后又被其它 go-ethereum 礦工接受,但是被網絡中的其它一些客戶端拒絕了。具體來說,OpenEthereum 和 Besu 拒絕了這個交易/區塊,Nethermind、go-ethereum 和 Erigon(這些客戶端實現的部分代碼來自 go-ethereum 代碼)接受了它。問題的根源已經找到,相關客戶端已經在新的版本中修復了該問題:
數據:倫敦升級以來已燃燒超25萬枚ETH:9月9日,ultrasound.money數據顯示,以太坊倫敦升級以來已燃燒252819.58枚ETH。當前ETH燃燒速率為每分鐘5.06ETH。[2021/9/9 23:11:58]
go-ethereum: v1.10.6, fix PR;
Erigon: v2021.07.04-alpha, fix PR;
Nethermind: v1.10.79, fix PR。
問題區塊的信息
網絡:Ropsten
區塊編號:10679538
哈希值:0x1252a34c4f2b061adc609e909d958c02e1ac39043e2e60c0ec47e565e3f625f1
OpenEthereum debug 日志
V神發布倫敦升級后鏈容量增加約9%的三個原因:V神(Vitalik Buterin)發文《鏈容量為什么在倫敦升級之后增加了約9%?》。V神表示有3個原因:
1. 冰河時代延遲
當倫敦分叉開始時,冰河時代才剛剛開始生效。倫敦之前的平均區塊時間約為13.5秒,倫敦之后的平均區塊時間回落到其長期正常水平約13.1秒。這是區塊速度約3%的差異,這解釋了鏈上gas使用量增加9%中的3%。
2. 目標值1500萬與最大1500萬
在倫敦升級之前,區塊最低gas使用量為1500萬,并非所有區塊都使用了整個1500萬,即使是功能最完善的區塊生產者也會留下0-20999未使用的gas,因為剩余空間太少,無法容納單筆交易,除此之外,總會有偶爾的區塊生產者制造空塊。4月份的一項分析表明,大約2%的區塊是空的。假設在倫敦之前有大約2-3%的未使用空間。然而,在倫敦之后,1500萬不是最大值,而是目標值。這意味著,如果使用的平均gas(包括空塊)低于1500萬,則基本費用將減少,直到平均值回到1500萬。所以這又占了大約2-3%。
3. basefee調整中的數學缺陷
EIP1559公式在目標為50%時并不完美。從最近觀察到的時間跨度中獲取數據,51.5%是完整區塊(full block)(因此,比預期的50%高約3%)。[2021/8/15 22:15:37]
eth_getBlock 輸出 (go-ethereum)
Crypto.com將支持以太坊倫敦升級:Crypto.com將支持以太坊倫敦升級,在以太坊區塊高度12965000前大概2小時,所有Crypto.com 交易所和APP上的ETH或者ERC20代幣的存提將暫停,交易將不受影響。[2021/8/2 1:28:59]
(注:所有時間已轉換成北京時間)。
2021 年 7月 21日
18 : 39:Ropsten 測試網上挖出區塊 10679537。
21 : 53:OpenEthereum 開發者在 Ethereum R&D discord 的 #1559-dev 頻道發帖稱他們的節點卡在了區塊 10679538 處。
21 : 58:@smixx 稱他們的在 Ropsten 節點位于區塊 10680453。
以太坊倫敦升級已確定所有納入的EIP,共包括EIP-1559等5個EIP:以太坊開發者Tim Beiko發文概述以太坊倫敦升級。雖然目前還未確定各網絡的升級區塊,但已最終確定納入的所有EIP。根據升級規范,它們是:
EIP-1559:改變ETH 1.0鏈的費用市場;
EIP-3198:BASEFEE操作碼;
EIP-3529:減少退款;
EIP-3541:拒絕以0xEF字節開頭的新合約;
EIP-3554:難度炸彈延遲至2021年12月1日。
此前消息,對于以太坊測試網進行倫敦升級的時間,Ropsten定于區塊高度10399301(6月9日),Goerli定于區塊高度4979794(6月16日),Rinkeby定于區塊高度8813188(6月23日),主網仍定于7月14日進行升級,在第一個測試網成功分叉后,再確定主網客戶端升級區塊。[2021/6/14 23:35:11]
22 : 36:Besu 確認他們的節點也拒絕了區塊 10679538。
TimBeiko正式將EIP-1559加入以太坊倫敦升級,暫定今年7月或8月執行:以太坊開發者、EIP-1559貢獻者TimBeiko提交一份提案,該提案主張將EIP-1559加入到以太坊倫敦升級中,并暫定于2021年7月或8月執行。TimBeiko認為,該EIP提案沒有什么問題,已經準備好通過正常的網絡升級測試流程。下一步是讓開發人員和其他網絡參與者(即礦工)就此提案達成共識。注:EIP-1559是一個對以太坊交易機制進行優化的機制,旨在使以太坊網絡上的交易費用更加可預測,解決當前“按需付費”的收費模式問題。其目標是創建一個更有效的收費市場,并簡化客戶端和應用程序軟件的gas費付款流程。此前消息,絕大多數以太坊應用表示支持實施EIP-1559。[2021/2/26 17:54:54]
22 : 51:確認挖出區塊 10679538 的礦工是 go-ethereum節點。
22 : 55:確認 go-ethereum 礦工仍繼續在區塊 10679538 上面挖礦。
22: 56:確認 Nethermind 也接受了區塊10679538。
23 : 08:go-ethereum 已確認問題的根本原因。
23 : 43:go-ethereum 開啟 pull request,提供候選修復方案。
23 : 46:Erigon 開啟 pull request,提供候選修復方案。
2021年 7月22 日
00 : 01:更新后的 go-ethereum 和 Besu 礦工在 Ropsten 上重啟(此時,錯誤的鏈已經挖到了區塊 10680803)。
00 : 43:EthereumJS 確認與 go-ethereum、Erigon 和 Nethermind 存在同樣的問題。
01 : 57:Nethermind 開啟 pull request,提供候選修復方案。
10 : 22:修復后的版本挖出了區塊 10680804。
22 : 54:go-ethereum 發布了修復后版本 v1.10.6。
~23 : 00:Nethermind 發布了修復后版本 v1.10.79。
2021 年 7 月 23日
~00 : 00:Erigon 發布了修復后版本 v2021.07.04-alpha。
提高規范中斷言(assertion)的清晰度
該提交新增了關于 EIP 1559 類型交易有效性的斷言。具體來說,在第 217 行代碼新增了以下斷言:
另外還要注意的是,在前幾行代碼(第 207 行)中,sender.balance 被修改成了減去交易量之后的部分(sender.balance -= transaction.amount)。這個參數引發了混亂,因為一些客戶端團隊在檢查第 217 行定義的斷言時使用的是全部 sender.balance(即,沒有減去transactiion.amount 的發送者地址余額),而非更新后的值。
@holiman 關于 go-ethereum 恢復的說明:
節點同步時跟隨錯誤的鏈
假設你正在運行 geth,并處于同步中。區塊 X 上發生了分叉。你的節點跟隨了總難度較高的錯誤的鏈。在區塊 Z,你停止了節點并將其更新至修復后版本。
問題描述:節點依然在 “錯誤” 的鏈上。
解決方案:執行 debug.setHead{X-1) 回到分叉發生之前。這會將節點倒回區塊 X 之前的某個狀態,不一定是區塊 X-1 的狀態,因為 geth 不一定有區塊 X-1 的完整狀態,但是會有其它某個區塊的完整狀態。通常情況下,geth 大約每隔 1 萬個區塊(1 小時)和/或宕機時會將狀態刷到磁盤。如果 geth 在 gcmode=archive 下運行,就會將每個區塊都刷到磁盤。
當錯誤的鏈總難度較高時進行同步
假設你正在同步一個 geth 節點,區塊 X 上發生了分叉。由于分叉已經發生了,再加上錯誤的鏈總難度更高,你很可能會同步錯誤的鏈,pivot 區塊是 X+M。在這種情況下,由于你沒有區塊 X+M 之前的狀態,無法執行 debug.setHead 來解決這個問題。
這種情況需要重新同步。但是,你需要防止 geth 同步錯誤的那條分叉鏈。這可以通過 whitelist 命令行參數實現。
因此,你需要執行 geth --whitelist 123123=0x2342fafa9af9af9af9af9af9。
所謂的白名單,就是一個 geth 節點在與另一個對等節點連接時會向對方請求區塊 123123 的數據。如果該 geth 節點收到的區塊頭中的哈希與白名單中的不符,就會與之斷開連接。這就意味著,節點將排斥錯誤的鏈上的對等節點,只與較短(但是正確的)鏈上的對等節點連接。
Tags:NBSBSPETHTHEnbs幣未來價格BSPNetworketh官網德國wisdomisthewealthofthewise
今天,我們已經發現付款方式的習慣和模式正在改變。雖然現金還是普遍存在于我們生活當中,但是在新一代年輕當中,現金支付已經不是這代人的主要支付手段,它正在被電子支付和數字支付以及其他不同類型的支付所.
1900/1/1 0:00:00Axie Infinity 是一款可玩可賺的戰斗游戲,由于其可玩可賺的經濟機制,它為全球成千上萬的人提供了可觀的收入。參與游戲經濟的方式有很多種.
1900/1/1 0:00:00據businessinsider消息報道,未來廣告也將飛向太空。提供技術服務的加拿大初創公司 Geometric Energy Corporation (GEC) 指出,它正在 SpaceX 的.
1900/1/1 0:00:007月26日,比特幣價格快速拉升,直逼40,000美元的心理價位水平,過去12小時上漲13%,幾乎收回了近一個月的跌幅。據推測,或許是下跌后反彈,加上受亞馬遜計劃接受比特幣支付的消息影響.
1900/1/1 0:00:00?8月5日,以太坊倫敦硬分叉升級完成,EIP-1559 正式上線。以太坊,迎來前所未有的高光時刻,似乎所有人都在討論和等待反轉時刻——以太坊超越比特幣.
1900/1/1 0:00:00在缺乏監管的惡性競爭下,加密衍生品交易所們將杠桿倍數從20倍抬升至100倍、125倍,乃至150倍,盡管自身從中獲利豐厚,但對于加密市場的健康度以及投資者的財務安全,這并非好事.
1900/1/1 0:00:00