Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

DAWN-397 ⁃ Most Hated Block (MHB) Fix #1024

Closed
blockone-syncclient opened this issue Jan 3, 2018 · 1 comment
Closed

DAWN-397 ⁃ Most Hated Block (MHB) Fix #1024

blockone-syncclient opened this issue Jan 3, 2018 · 1 comment
Assignees
Milestone

Comments

@blockone-syncclient
Copy link

blockone-syncclient commented Jan 3, 2018

Fix for the Most Hated Block (MHB) issues encountered over the holiday break. In block 936299.

Some historical context. On Dec. 26, 2017, a message involving the transfer of currency value between two accounts was submitted. This was not a unique event, nor was it ill formed. Yet the WASM runtime infrastructure is unable to process this message, raising a "integer divide by 0 or integer overflow" exception. The problem is that when this first occurred, 15 of the block producers accepted the original block and made it irreversible. However the remaining 6 producer nodes, 4 11 12 14 15 21, all failed to accept the block. Subsequent efforts to restart those nodes also failed, hence the new designation of "Most Hated Block." Eventually I got the testnet restarted by performing a "brain transplant" copying the blockchain database and log files from one of the working nodes to the failing nodes.

The proposed patch provides a workaround which is to catch the specific exception when thrown by the WASM runtime while not producing new blocks. Then just log that the exception occurred but otherwise don't do anything about it.

ATP: start a eosd instance and connect to testnet 1.
Observe that your node syncs past block #936299, the most hated block.
Break into your happy dance. :-)

@blockone-syncclient blockone-syncclient changed the title DAWN-397 ⁃ Mot Hated Block (MHB) Fix DAWN-397 ⁃ Most Hated Block (MHB) Fix Jan 3, 2018
pmesnier added a commit that referenced this issue Jan 4, 2018
…a new node's chain, Also addresses a secondary issue involving blocks with messages that take very close to the max txn processing time, sometimes the deadline is exceeded which then causes a fork and there is no recovering
@blockone-syncclient
Copy link
Author

➤ Phil Mesnier commented:

Code for review is in github pull request #1034

pmesnier added a commit that referenced this issue Jan 4, 2018
pmesnier added a commit that referenced this issue Jan 5, 2018
pmesnier added a commit that referenced this issue Jan 5, 2018
pmesnier added a commit that referenced this issue Jan 5, 2018
@coreylederer coreylederer added this to the Q1, 2018 milestone Mar 12, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants