Skip to content

Commit

Permalink
darwinv2 changes
Browse files Browse the repository at this point in the history
  • Loading branch information
isabellewei committed Sep 6, 2024
1 parent 9243fe6 commit 04eada0
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ For most developers, using [our official RPC endpoint](/en/developers/developer-

We recommend using the latest release at https://github.com/scroll-tech/go-ethereum/releases. The required version for Scroll Mainnet is `scroll-v5.5.0` or higher, and for Scroll Sepolia it is `scroll-v5.4.2` or higher. If you'd like to keep up with new node releases, go to https://github.com/scroll-tech/go-ethereum, click on **Watch**, **Custom**, and make sure that **Releases** is selected.

For the remainder of this guide, `VERSION` will denote the version tag. For example, `scroll-v5.6.0`.
For the remainder of this guide, `VERSION` will denote the version tag. For example, `scroll-v5.7.0`.

### Hardware Requirements

Expand Down
32 changes: 32 additions & 0 deletions src/content/docs/en/technology/overview/scroll-upgrades.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,38 @@ The following contracts are used to initiate upgrades and execute upgrades after

You can join our [Telegram channel for technical updates](https://t.me/scroll_tech_updates), which includes future upgrade announcements and on-chain operation events.

## DarwinV2 Upgrade

### Overview

During internal testing, we identified that blocks may not always be compressible under certain condition, which leads to unprovable chunks and batches.
To fix this issue, a minor upgrade has been conducted so that uncompressed blobs will be enabled when this special case is detected.

Notes:
1.
2. This patch does not change any headers and therefore is backward-compatible.

### Timeline

As this is a security related patch, we bypassed the 7-day timelock mechanism.

- **Scroll Sepolia**: August 28th, 2024
- **Scroll Mainnet**: September 2nd, 2024

### Compatibility

#### Sequencer and Follower Nodes (l2geth)

The new node version is `v5.7.0`. See the [release notes](https://github.com/scroll-tech/go-ethereum/releases/tag/scroll-v5.7.0) for more information.
This upgrade does not change Scroll's state transition function, so it is backward compatible. However, the format of the batch data committed to Ethereum changes. As a result, nodes that enabled rollup verification (`--rollup.verify`) must upgrade to be able to follow the chain.

#### Dapps and Indexers

A change has been implemented to Scroll Mainnet to enhance sequencer throughput, which adjusted the maximum reorg depth to 17 blocks. Previously, the system performed thorough capacity checks within the signer thread to determine whether transactions exceed the circuit limit. While this ensures that all transactions within a block are compliant, it also requires additional CPU resources.
We introduced a new circuit capacity checking scheme on Mainnet. The sequencer thread now will continue to perform capacity checks, but in a more approximate manner. In parallel, 16 worker threads will accurately verify the capacity of previous blocks. As a result, a reorg could occur with a maximum depth of 17 blocks, although the likelihood of this is low.

For indexers, the `BatchHeader` version has been upgraded to 4. This is backward compatible (the only exception is for projects decoding the blob payload, which has changed slightly).

## Darwin Upgrade

### Overview
Expand Down

0 comments on commit 04eada0

Please sign in to comment.