- 16 Aug, 2023 13 commits
-
-
OptimismBot authored
contracts-bedrock: goerli deploy config
-
mergify[bot] authored
-
OptimismBot authored
fix(indexer): Fix cli flags
-
mergify[bot] authored
-
OptimismBot authored
feat(ctb): `CONTRIBUTING.md`
-
mergify[bot] authored
-
OptimismBot authored
op-service: Harden Transaction Manager
-
mergify[bot] authored
-
OptimismBot authored
op-service: Cleanup backoff.Do implementation
-
Will Cory authored
-
mergify[bot] authored
-
OptimismBot authored
op-e2e: Add e2e test for challenger responding to multiple games
-
Will Cory authored
-
- 15 Aug, 2023 27 commits
-
-
mergify[bot] authored
-
clabby authored
-
Joshua Gutow authored
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
clabby authored
Co-authored-by:
refcell.eth <abigger87@gmail.com>
-
Joshua Gutow authored
The context in txmgr.Send is now being checked for cancellations by the retry package which wraps craftTx. This caused an error in one of the txmgr queue tests. The flow of the test is that it would send a valid tx, send an invalid tx, and then send another tx. It'd expect that the last tx got cancelled because of the context cancellation propogation (i.e. if one tx in the queue fails, all will fail). Because the context is cancelled prior to the call to txmgr.Send & this check on the context, the transaction is no longer failing in the receipt loop, but at craftTx. This test checked that the transaction would make it to the receipt loop (via hooking into sendTx where it recorded the nonce).
-
Joshua Gutow authored
This commit fixes a common source of errors in the transaction manager which then cause significant problems for the batcher. The transaction manager is designed to be resilient from errors when resubmitting txns or when polling for transaction receipts. It was not designed to be resilient on the initial transaction submission, and that was the root cause of several incidents. This commit fixes this issue by wrapping `craftTx` in a retry. If there is a sustained problem for longer than the amount of retries, issues could still happen, but this will significantly reduce the number of issues. A failure in craftTx is so harmful is because the transaction manager is wrapped in a txmgr.Queue which handles multiple in flight transactions. The queue uses an errgroup to manage concurrency and when any single txmgr.Send fails it will cancel the context & cancel the rest of the in flight sends. Because txmgr.Send could fail when creating a transaction, a transient failure would cancel multiple in flight transactions. Some of these in flight transactions would eventually land on L1 and the batcher would lose track of which frames it had submitted & thus could submit duplicate frames. Two examples of this flow are provided in the logs. First a timeout happens in the transaction creation, then multiple transactions are cancelled via the context. Then there is a log for "aborted transaction sending". This log occurs because a transaction that was cancelled landed on L1 and the nonce of the transaction is too low. That then cancels then pending transactions again. t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=104,419 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:22:28+0000 lvl=warn msg="unable to publish tx" err="aborted transaction sending" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=860 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:20:24+0000 lvl=warn msg="unable to publish tx" err="failed to create the tx: eth_signTransaction failed: Post \"--snip--\": context deadline exceeded" data_size=120,000 t=2023-07-13T16:07:37+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=104,670 t=2023-07-13T16:07:37+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:07:37+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:07:37+0000 lvl=warn msg="unable to publish tx" err="aborted transaction sending" data_size=120,000 t=2023-07-13T16:05:05+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:05:05+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=110,635 t=2023-07-13T16:05:05+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:05:05+0000 lvl=warn msg="unable to publish tx" err="context canceled" data_size=120,000 t=2023-07-13T16:05:05+0000 lvl=warn msg="unable to publish tx" err="failed to create the tx: failed to get gas price info: failed to fetch the suggested gas tip cap: Post \"--snip--\": context deadline exceeded" data_size=120,000
-
OptimismBot authored
contracts-bedrock: delete sherlock upgrade scripts
-
mergify[bot] authored
-
OptimismBot authored
build(deps-dev): bump nx from 15.6.0 to 16.6.0
-
mergify[bot] authored
-
OptimismBot authored
Merge pull request #6772 from ethereum-optimism/08-13-feat_indexer_Start_adding_ui_to_indexer_docker-compose feat(indexer): Start adding ui to indexer docker-compose
-
mergify[bot] authored
-
OptimismBot authored
build(deps): bump pino-sentry from 0.7.0 to 0.14.0
-
dependabot[bot] authored
Bumps [nx](https://github.com/nrwl/nx/tree/HEAD/packages/nx) from 15.6.0 to 16.6.0. - [Release notes](https://github.com/nrwl/nx/releases) - [Commits](https://github.com/nrwl/nx/commits/16.6.0/packages/nx) --- updated-dependencies: - dependency-name: nx dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by:
dependabot[bot] <support@github.com>
-
mergify[bot] authored
-
OptimismBot authored
build(deps): bump gorm.io/gorm from 1.25.2 to 1.25.3
-
Mark Tyneway authored
-
Mark Tyneway authored
Deletes these old upgrade scripts that were used to upgrade the contracts on goerli with the sherlock audit fixes. These scripts are not general enough to be used again, so there is no need to keep them around. Removing them will help to speed up compile time. `solc` takes awhile at this point to compile the contracts repo so we should prune out code that is not being used or will not be used in the future. We should iterate on the design so that we can have generic upgrade scripts in the future.
-
mergify[bot] authored
-
Mark Tyneway authored
chore(contracts-bedrock): pnpm up --latest
-
Mark Tyneway authored
feat: Use tsx instead of ts-node
-
mergify[bot] authored
-