movementlabsxyz / movement

The Movement Network is a Move-based L2 on Ethereum.
Apache License 2.0
50 stars 48 forks source link

Issues when generating the genesis blob and running a fullnode in our Sui blockchain #166

Open andyjsbell opened 2 months ago

andyjsbell commented 2 months ago

Issue Description

We are encountering several issues when generating the genesis blob and running a fullnode in our Sui blockchain setup. Below are the steps we followed and the issues we encountered:

Steps to Reproduce

Generate the genesis blob and 4 local validator nodes using the following command:

sui genesis -f --with-faucet --working-dir=xxx --epoch-duration-ms 86400000

Run a fullnode using the command:

cargo run --bin sui-test-validator -- --config-dir xxx

Issues Encountered

1. Fullnode Key and Synchronization Issue:

Every time we start the setup, the 4 local validator nodes use the same key and port and operate normally. However, the fullnode generates a new random key each time it starts, which then triggers a re-execution (or possibly re-synchronization) of all transactions since startup. This is problematic because we have a large number of transactions, and this process prevents the fullnode from starting properly.

2. Epoch Production Freeze:

During the production of a new epoch each day, the blockchain becomes unresponsive, and transactions cannot be submitted. This freeze lasts for approximately 30-50 minutes.

3. Faucet Timeout and Recovery Issue:

When executing the faucet, we encounter the following error:

Timed out waiting for a coin from the gas coin pool

After this error occurs, the faucet becomes unusable and does not recover, disrupting our operations.

Expected Behavior

  1. The fullnode should consistently use the same key and should not re-execute all transactions on every startup.
  2. The epoch production should not cause the chain to freeze, and transactions should continue to be processed without significant delays.
  3. The faucet should not timeout, and even if an error occurs, it should recover and continue to function normally.

Environment

Sui Version: 1.24.1 Operating System: ubuntu Rust Version: 1.75.0 Node Configuration: epoch-duration-ms 86400000

Possible cause

We ran into this issue after we made an update to SUI node.

Possible fix

Follow upstream SUI node and check when they will have an fix

┆Issue is synchronized with this Jira Task by Unito

andyjsbell commented 2 months ago

https://github.com/MystenLabs/sui/issues/16420

andyjsbell commented 2 months ago

Thanks for the thorough report, @radupopa369

Are you using the M2 repo at https://github.com/movementlabsxyz/m2

Or are you just using the latest Sui blockchain?

andyjsbell commented 2 months ago

This is the info that came from https://github.com/tonyxia2023. I posted it here to have a place to refference when the community asks questions about the temporary unavailability of the M2 network