You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When geth experiences a non-graceful crash, ethconnect will retry the pending transactions. The eth_estimateGas calls will be made during the retries.
After the node recovers, it will perform a rewind to a previous full block.
At this point, ethconnect will be retrying the eth_estimateGas calls, which fails because it's chain repair state. EthConnect then attempts an eth_call request to try to discover the error that caused the failure. Since the eth_call request is made at the original block height, geth will return block not found error and fail the transaction. EthConnect believes it's the actual cause of the tx failure and returns it to the client.
What it should do is detecting that "block not found" is returned and recognize that it's likely a block rewind situation, and continues to retry.
The text was updated successfully, but these errors were encountered:
jimthematrix
changed the title
Awareness of the block rewind situation after a non-graceful crash
Awareness of the block rewind situation after a non-graceful shutdown
Jan 22, 2022
When geth experiences a non-graceful crash, ethconnect will retry the pending transactions. The
eth_estimateGas
calls will be made during the retries.After the node recovers, it will perform a rewind to a previous full block.
At this point, ethconnect will be retrying the
eth_estimateGas
calls, which fails because it's chain repair state. EthConnect then attempts aneth_call
request to try to discover the error that caused the failure. Since theeth_call
request is made at the original block height, geth will returnblock not found
error and fail the transaction. EthConnect believes it's the actual cause of the tx failure and returns it to the client.What it should do is detecting that "block not found" is returned and recognize that it's likely a block rewind situation, and continues to retry.
The text was updated successfully, but these errors were encountered: