<aside> <img src="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/be4972c5-581f-4ddc-b5c8-c132b861775b/op_sunny.gif" alt="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/be4972c5-581f-4ddc-b5c8-c132b861775b/op_sunny.gif" width="40px" /> **OP Mainnet’s migration to Bedrock has concluded and the Bedrock sequencer has started up! Images, and data directories for node operators can be found here.

Key external OP Mainnet infrastructure is starting to come back online. View the OP Mainnet Infra Tracker to follow along.**


<aside> ✨ Full Node Operators: The migrated (Bedrock) datadir required to spin up op-geth has been successfully hosted and is now ready for distribution: https://storage.googleapis.com/oplabs-mainnet-data/mainnet-bedrock.tar


<aside> 🔴 For Archival Node Operators: We have initiated the upload of the archival datadir, which may take up to 24 hours.

While we recommend using the legacy-geth archival datadir we upload once it's ready, given the size of the archival data disk and the time it'll take for it to become available we recommend preserving your legacy archival nodes and routing archival traffic to them if possible. To check if your legacy archival node is able to serve traffic, please do the following:

If both of these criteria are true, then your legacy archival node is on the same block as the archival datadir and can be used to serve user traffic.

You can set --rollup.historicalrpc <l2geth-rpc> on op-geth and it will forward requests for historical data it can't handle to l2geth.


Note: This page is managed & updated by the team at OP Labs 🛠️

Upgrade Guide

What to Expect

<aside> 🔴 Throughout the migration, the Optimism Status Page will be updated with the latest migration status and any important information for our partners and node operators.


Migration Step What to Expect
Initiate migration Legacy network deposits and withdrawals will be paused. We will wait for the legacy sequencer to finish posting transactions to the L1 chain.
Disable Sequencer Ingress This will happen in tandem with step 1. Transactions on the legacy sequencer will no longer be accepted.
Execute L2 Migration An irregular state transition on L2 will be performed. This is the longest step in the migration process, and could take up to 1.5 hours.

It involves running a large script that will migrate ETH balances, migrate withdrawals, and perform migration checks. | | Build and Push Docker Images | This step will release the op-node image for OP Mainnet in the https://community.optimism.io/docs/useful-tools/networks/#optimism-mainnet (op-geth image is already available) | | Host Migrated Datadir | Node operators need two databases to download new network software and spin up Bedrock nodes.

After we host the migrated datadir, we will be able to distribute the first database needed: the datadir. | | Host Archival Snapshot Database | After we host the archival snapshot database, we will be able to distribute the second database that node operators need to spin up Bedrock nodes: the archival snapshot.

Though we will start the process of uploading the archival snapshot earlier in the migration, it can take a long time to upload so we don’t know exactly when this step will be completed. Node operators will also need additional time to download the archival snapshot. | | Multisig Batch 3: Execute MSD Phase 2 and unpause the portal: | This step will upgrade L1 smart contracts. Once the contracts are upgraded, the portal will be unpaused, and deposits/withdrawals will be re-enabled. | | Enable Sequencer Ingress | At this stage, the Bedrock sequencer will start up, ending the outage portion of the migration. | | Database Distribution | After the new sequencer is enabled, OP Mainnet’s migration to Bedrock will be complete! We will begin checking in to ensure node operators and other key partners have the databases and support needed to spin up new nodes and resume services. | | External OP Mainnet Infrastructure | Key external OP Mainnet infrastructure will come back online. View the [External] OP Mainnet Bedrock Upgrade — Infra Status Tracker (https://oplabs.notion.site/External-OP-Mainnet-Bedrock-Upgrade-Infra-Status-Tracker-07d7c9c0916243b8b743b74af77d37f9) to track. |

Backwards compatibility is one of the upgrade's key design goals. Potential incompatibilities and their workarounds are highlighted in the sections below.

Day-of Preparations

Developer Guides

If you operate nodes or support apps and wallets that are integrated with OP Mainnet, there may be some actions you need to take to sync your product after the upgrade.

For Node Operators


This section assumes that you have read and understood our Node Operator Guide. Please read that first if you have not already.

From a node operator perspective, the old system will be completely replaced on upgrade day. This means that rather than upgrading legacy infrastructure, node operators will be standing up entirely new infrastructure to run the Bedrock network.

On upgrade day, we will provide node operators with the following information in the OP Mainnet network section. To be notified as soon as these are available, watch the Optimism Status Page: