Skip to content
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

Run a New Archive Node #2824

Open
timolson opened this issue Dec 9, 2024 · 3 comments
Open

Run a New Archive Node #2824

timolson opened this issue Dec 9, 2024 · 3 comments

Comments

@timolson
Copy link

timolson commented Dec 9, 2024

I am trying to start up a new Nitro archive node (classic not required) Or do you call that a "full" node? I need the full blockchain history back to the start of Nitro.

Nitro fails with any init option I try other than --init.latest=pruned but my understanding is that pruned nodes do not contain enough history for my use case.

When I try starting with --init.latest=archive or --init.latest=genesis there are failures related to the unavailability of snapshots.

When I try starting with --init.url="https://snapshot.arbitrum.foundation/arb1/nitro-archive.tar" it fails to find the manifest txt.

I do not have an existing archive node from which to take a snapshot, and have had no success trying to start from genesis either.

I have found no up-to-date documentation on how to run a full node. Only pruned nodes seem to work.

Could you please point me in the direction of how to start & run a new node that can serve the entire history since Nitro?

@timolson
Copy link
Author

Error log from --init.latest=archive

      containers:
        - name: arb1
          image: offchainlabs/nitro-node:v3.2.1-d81324d
          args: [
            '--chain.id=42161',
            '--init.latest=archive',
            '--execution.caching.archive',
            '--parent-chain.connection.url=http://eth-rpc:8545',
            '--parent-chain.blob-client.beacon-url=http://eth-beacon-rpc:5052',
            '--ws.addr=0.0.0.0', '--ws.port=8548', '--ws.origins=*',
            '--http.api=net,web3,eth', '--http.corsdomain=*', '--http.addr=0.0.0.0', '--http.vhosts=*',
          ]
INFO [12-10|18:25:31.493] retaining ability to lookup full transaction history as archive mode is enabled
INFO [12-10|18:25:31.493] using existing jwt file                  filename=/home/user/.arbitrum/jwtsecret
INFO [12-10|18:25:31.493] Running Arbitrum nitro node              revision=v3.2.1-d81324d vcs.time=2024-09-24T10:12:36-05:00
INFO [12-10|18:25:31.494] connected to l1 chain                    l1url=http://eth-rpc:8545 l1chainid=1
WARN [12-10|18:25:31.494] failed to check if node is compatible with on-chain WASM module root err="failed to get on-chain WASM module root: no contract code at given address"
INFO [12-10|18:25:31.495] Defaulting to pebble as the backing database
INFO [12-10|18:25:31.495] Allocated cache and file handles         database=/home/user/.arbitrum/arb1/nitro/l2chaindata cache=16.00MiB handles=16
Usage of /usr/local/bin/nitro:
ERROR[12-10|18:25:31.611] error initializing database              err="failed to get latest file at \"https://snapshot.arbitrum.foundation/arb1/latest-archive.txt\": file not found"

@timolson
Copy link
Author

timolson commented Dec 10, 2024

Error log for --init.latest=genesis

INFO [12-10|18:30:08.820] retaining ability to lookup full transaction history as archive mode is enabled
INFO [12-10|18:30:08.820] using existing jwt file                  filename=/home/user/.arbitrum/jwtsecret
INFO [12-10|18:30:08.820] Running Arbitrum nitro node              revision=v3.2.1-d81324d vcs.time=2024-09-24T10:12:36-05:00
INFO [12-10|18:30:08.821] connected to l1 chain                    l1url=http://eth-rpc:8545 l1chainid=1
WARN [12-10|18:30:08.822] failed to check if node is compatible with on-chain WASM module root err="failed to get on-chain WASM module root: no contract code at given address"
INFO [12-10|18:30:08.822] Defaulting to pebble as the backing database
INFO [12-10|18:30:08.822] Allocated cache and file handles         database=/home/user/.arbitrum/arb1/nitro/l2chaindata cache=16.00MiB handles=16
Usage of /usr/local/bin/nitro:
ERROR[12-10|18:30:08.933] error initializing database              err="failed to get latest file at \"https://snapshot.arbitrum.foundation/arb1/latest-genesis.txt\": file not found"

Although there is definitely a Pebble database for genesis, it does not find it. However, using --init.url=https://snapshot.arbitrum.io/arb1/nitro-genesis-pebble.tar seems to work.

@lambchr
Copy link
Collaborator

lambchr commented Dec 13, 2024

Hey @timolson thanks for flagging the issue. I think I have fixed it, started up a new nitro node with the --init.latest=archive flag and saw this log line

...
{"t":"2024-12-13T12:32:20.585902982Z","lvl":"info","msg":"Downloading initial database","url":"https://snapshot.arbitrum.foundation/arb1/nitro-archive.tar"}
...

Could you give it a go and let us know if this works for you now?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants