-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
classify arbitrum sequencer inaccessible error as retryable #14100
classify arbitrum sequencer inaccessible error as retryable #14100
Conversation
core/chains/evm/client/errors.go
Outdated
@@ -158,7 +158,7 @@ var arbitrum = ClientErrors{ | |||
Fatal: arbitrumFatal, | |||
L2FeeTooLow: regexp.MustCompile(`(: |^)max fee per gas less than block base fee(:|$)`), | |||
L2Full: regexp.MustCompile(`(: |^)(queue full|sequencer pending tx pool full, please try again)(:|$)`), | |||
ServiceUnavailable: regexp.MustCompile(`(: |^)502 Bad Gateway: [\s\S]*$`), | |||
ServiceUnavailable: regexp.MustCompile(`(: |^)502 Bad Gateway: [\s\S]*$|network is unreachable|observed invariant violation on SendTransaction`), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@dhaidashenko Are these two error messages enough ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have some docs we could link for these? because invariant violation on SendTransaction
reads like it could be considered Fatal
, so we should link any explanation that we can.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@huangzhen1997 invariant violation
is logged by MultiNode when we find contradictions in RPCs responses.
Usually, when we see such log msgs, we need to adjust classification for errors that were logged as Unknown
in the resultsByCode
field of invariant violation on SendTransaction
log.
For this particular case it's network is unreachable
and i/o timeout
Quality Gate passedIssues Measures |
Cherry-Pick: classify arbitrum sequencer inaccessible error as retryable (smartcontractkit/chainlink#14100) Cherry-Pick: fix unhandled already seen tx error for gnosis chiado (smartcontractkit/chainlink#14099) Requires: “alreadyknown” is properly classified Errors are classified to be Retryable
* add error handling for service unavailable for arbitrum * add changeset * update error message --------- Co-authored-by: Prashant Yadav <[email protected]>
Ticket: https://smartcontract-it.atlassian.net/browse/BCI-3893
Description
In some cases RPCs are not able to reach Arbitrum Sequencer which causes Unknown errors. We should classify them as Retryable. example log
Acceptance Criteria
Errors are classified to be Retryable