Skip to content

Conversation

@RACEcommunity
Copy link
Contributor

Description

Adding RACE Chain to superchain registry.

@RACEcommunity RACEcommunity requested review from a team as code owners March 13, 2024 17:56
@mds1 mds1 added the M-new-chain-request Meta: New Chain Request label Mar 18, 2024
@zchn zchn assigned zchn and unassigned mds1 Mar 18, 2024
@nitantchhajed
Copy link
Contributor

Hey @zchn the mentioned required checks codegen: ci/circleci: check-codegen & Security configs ci/circleci: check-security-configs are now successful.

@zchn
Copy link
Contributor

zchn commented Mar 27, 2024

Hey @zchn the mentioned required checks codegen: ci/circleci: check-codegen & Security configs ci/circleci: check-security-configs are now successful.

Thank you! The golang-test also needs to pass, there are 4 failures in the tests right now. I'm circling back to the team to confirm next steps and will share here as soon as I have the answers for you!

@zchn zchn removed the request for review from protolambda March 27, 2024 17:04
@nitantchhajed
Copy link
Contributor

nitantchhajed commented Mar 29, 2024

@zchn We are in the process of redeploying the testnet. Keeping the Ecotone in mind do we need to use op-contracts 1.3.0, because I saw it contains new preinstalls which are enabled after ecotone.

And do we need to follow any extra steps to enable Ecotone while deploying op-stack ??

Currently we have added these Ecotone configurations for Blobs https://docs.optimism.io/builders/chain-operators/management/configuration#ecotone , but facing issue in creating genesis and rollup file .

image

@zchn
Copy link
Contributor

zchn commented Mar 29, 2024

@zchn We are in the process of redeploying the testnet. Keeping the Ecotone in mind do we need to use op-contracts 1.3.0, because I saw it contains new preinstalls which are enabled after ecotone.

And do we need to follow any extra steps to enable Ecotone while deploying op-stack ??

Currently we have added these Ecotone configurations for Blobs https://docs.optimism.io/builders/chain-operators/management/configuration#ecotone , but facing issue in creating genesis and rollup file .

image

Hi @nitantchhajed , would it be ok if we wait for @sbvegan to come back from OOO to help you on Wednesday? We really want to help you to be successful with 1 shot here to avoid another relaunch, so it would be ideal if we can work closely with you on the testnet launch.

And my apologies for not supporting you on this sooner!

@sbvegan
Copy link
Collaborator

sbvegan commented Mar 29, 2024

I'll need to take a closer look at this, but we do have additional docs on ecotone activation for chain operators here. It's probably best to use the latest governance approved and audited contracts , v1.3.0. You can see details on that here

@nitantchhajed
Copy link
Contributor

nitantchhajed commented Apr 1, 2024

Hii @zchn @sbvegan , I followed the following steps to activate ecotone in fresh op-stack chain on local., but facing the Issues mentioned.

  1. Using the op-node release 1.7.2 & op-contracts v1.3.0 .
  2. added ecotone_time=0 in rollup.json by following this article .
  3. In the further steps mentioned in the article I tried to start op-geth by adding the flag --override.ecotone=0 as per the article, but it gave me an error -

image

  1. Then I started the op-geth without using the --override.ecotone=0 and started op-node by providing the beacon node RPC --l1.beacon flag according to this. Got error -

image

My rollup.json

{
  "genesis": {
    "l1": {
      "hash": "0xacc788d115426ff1eb1c4490bffb33b4a0c556f24bd6c168d8712b926ab86d51",
      "number": 5590296
    },
    "l2": {
      "hash": "0x05c54058d5bbc213a15b6d38e48c7d3361fab1c845ce20d200d0b779b5016bea",
      "number": 0
    },
    "l2_time": 1711783776,
    "system_config": {
      "batcherAddr": "0xf663792be0edd00affb8bbe4ac6d8185efd5671d",
      "overhead": "0x0000000000000000000000000000000000000000000000000000000000000834",
      "scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240",
      "gasLimit": 30000000
    }
  },
  "block_time": 2,
  "max_sequencer_drift": 600,
  "seq_window_size": 3600,
  "channel_timeout": 300,
  "l1_chain_id": 11155111,
  "l2_chain_id": 90001,
  "regolith_time": 0,
  "canyon_time": 0,
  "batch_inbox_address": "0xff00000000000000000000000000000000042069",
  "deposit_contract_address": "0xe89a7eaa38e0c3fbb27e50afa7df005af4c6605f",
  "l1_system_config_address": "0x69c9766c649ae1183470b50138a982d83e8901ff",
  "protocol_versions_address": "0x0000000000000000000000000000000000000000",
  "da_challenge_address": "0x0000000000000000000000000000000000000000",
  "da_challenge_window": 0,
  "da_resolve_window": 0,
  "ecotone_time": 0,
  "use_plasma": false
}

edit: improved formatting

@nitantchhajed
Copy link
Contributor

nitantchhajed commented Apr 1, 2024

After using this command to run op-node -

./bin/op-node --l2=http://localhost:8551 --l2.jwt-secret=./jwt.txt --sequencer.enabled --sequencer.l1-confs=5 --verifier.l1-confs=4 --rollup.config=./rollup.json --rpc.addr=0.0.0.0 --rpc.port=8547 --p2p.disable --rpc.enable-admin --p2p.sequencer.key=$GS_SEQUENCER_PRIVATE_KEY --l1=$L1_RPC_URL --l1.rpckind=alchemy --l1.beacon=https://ethereum-sepolia-beacon-api.publicnode.com --override.delta=1711437381 --override.ecotone=1711441229

And for op-geth -

./build/bin/geth --datadir ./datadir --http --http.corsdomain="*" --http.vhosts="*" --http.addr=0.0.0.0 --http.api=web3,debug,eth,txpool,net,engine --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.origins="*" --ws.api=debug,eth,txpool,net,engine --syncmode=full --gcmode=archive --nodiscover --maxpeers=0 --networkid=42069 --authrpc.vhosts="*" --authrpc.addr=0.0.0.0 --authrpc.port=8551 --authrpc.jwtsecret=./jwt.txt --rollup.disabletxpoolgossip=true --override.cancun=1711441227 --override.canyon=1711441228 --override.ecotone=1711441229

These are the logs of my op-node --

image

@nitantchhajed
Copy link
Contributor

@zchn We are waiting for @sbvegan to come up with the solution, whenever he's available, so that we can pass all the checks in one shot without doing multiple relaunches ! Thanks...

@zchn
Copy link
Contributor

zchn commented Apr 1, 2024

@zchn We are waiting for @sbvegan to come up with the solution, whenever he's available, so that we can pass all the checks in one shot without doing multiple relaunches ! Thanks...

Sounds good! @sbvegan is on vacation until Wed April 3. If it's OK for us to wait until then to get back to you that would be perfect for us. But if you need answers sooner, I can also try to find somebody else in the meantime!

@nitantchhajed
Copy link
Contributor

@zchn We are waiting for @sbvegan to come up with the solution, whenever he's available, so that we can pass all the checks in one shot without doing multiple relaunches ! Thanks...

Sounds good! @sbvegan is on vacation until Wed April 3. If it's OK for us to wait until then to get back to you that would be perfect for us. But if you need answers sooner, I can also try to find somebody else in the meantime!

Sure, we can wait for @sbvegan to come back from vacation. 👍🏼

@sbvegan
Copy link
Collaborator

sbvegan commented Apr 3, 2024

Hey @nitantchhajed, sorry for the wait, I'm back at work now. Here's a few things I noticed:

  1. You want to set the ecotone (and general hardfork timestamps) in rollup.json OR use the override flags. I suggest using the former and remove the override flags from the op-node startup command to see how that works.
  2. You should remove --networkid=42069 from op-geth. The node should be able to get this information and 42069 doesn't seem to correspond to RACE.
  3. Are you able to paste your node logs? I can't read them at this size and for some reason GitHub won't let me download them.

@nitantchhajed
Copy link
Contributor

@sbvegan I created a new chain on local to test out the Ecotone. I deployed the op-contracts v1.3.0, op-node- v1.7.2 & op-geth-Ecotone upgrade for this local deployment with chain ID 90003. I added the hardfork timestamps 0 and "ecotone_time":0 in rollup.json and started my op-geth & op-node with the mentioned commands, but my op-geth is panicking as soon as I run my op-node software.


op-geth command :

./build/bin/geth   --datadir ./datadir   --http   --http.corsdomain="*"   --http.vhosts="*"   --http.addr=0.0.0.0   --http.api=web3,debug,eth,txpool,net,engine   --ws   --ws.addr=0.0.0.0   --ws.port=8546   --ws.origins="*"   --ws.api=debug,eth,txpool,net,engine   --syncmode=full   --gcmode=archive   --nodiscover   --maxpeers=0   --networkid=90003   --authrpc.vhosts="*"   --authrpc.addr=0.0.0.0   --authrpc.port=8551   --authrpc.jwtsecret=./jwt.txt   --rollup.disabletxpoolgossip=true --override.ecotone=0 --override.canyon=0 --override.cancun=0

I even tried running without the --override.ecotone=0 --override.canyon=0 --override.cancun=0 flags, but op-geth keeps crashing whenever sequencer is trying to create a new block.


op-node command:

./bin/op-node   --l2=http://localhost:8551   --l2.jwt-secret=./jwt.txt   --sequencer.enabled   --sequencer.l1-confs=5   --verifier.l1-confs=4   --rollup.config=./rollup.json   --rpc.addr=0.0.0.0   --rpc.port=8547   --p2p.disable   --rpc.enable-admin   --p2p.sequencer.key=$GS_SEQUENCER_PRIVATE_KEY   --l1=$L1_RPC_URL   --l1.rpckind=$L1_RPC_KIND --l1.beacon=https://ethereum-sepolia-beacon-api.publicnode.com

op-node logs:

./bin/op-node   --l2=http://localhost:8551   --l2.jwt-secret=./jwt.txt   --sequencer.enabled   --sequencer.l1-confs=5   --verifier.l1-confs=4   --rollup.config=./rollup.json   --rpc.addr=0.0.0.0   --rpc.port=8547   --p2p.disable   --rpc.enable-admin   --p2p.sequencer.key=$GS_SEQUENCER_PRIVATE_KEY   --l1=$L1_RPC_URL   --l1.rpckind=$L1_RPC_KIND --l1.beacon=https://ethereum-sepolia-beacon-api.publicnode.com
INFO [04-04|18:09:18.046] Not opted in to ProtocolVersions signal loading, disabling ProtocolVersions contract now.
INFO [04-04|18:09:18.046] No persisted sequencer state loaded
INFO [04-04|18:09:18.046] Rollup Config                            l2_chain_id=90003 l2_network="unknown L2" l1_chain_id=11,155,111 l1_network=sepolia l2_start_time=1,712,229,216 l2_block_hash=0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 l2_block_number=0 l1_block_hash=0x05bd28511faf0288f489c66496fb1499374ac180757ca35a57110320851bcdbc l1_block_number=5,627,097 regolith_time="@ genesis" canyon_time="@ genesis" delta_time="@ genesis" ecotone_time="@ genesis" fjord_time="(not configured)" interop_time="(not configured)"
INFO [04-04|18:09:18.046] Initializing rollup node                 version=v0.0.0-99a53381-1710933867
INFO [04-04|18:09:19.714] Connected to L1 Beacon API, ready for EIP-4844 blobs retrieval. version=teku/v24.3.0/linux-x86_64/-privatebuild-openjdk64bitservervm-java-21
INFO [04-04|18:09:21.411] loaded new runtime config values!        p2p_seq_address=0x0000000000000000000000000000000000000000
INFO [04-04|18:09:21.411] Admin RPC enabled
INFO [04-04|18:09:21.411] Starting JSON-RPC server
INFO [04-04|18:09:21.411] metrics disabled
INFO [04-04|18:09:21.411] Starting execution engine driver
INFO [04-04|18:09:21.411] Starting driver                          sequencerEnabled=true sequencerStopped=false
INFO [04-04|18:09:21.411] Rollup node started
INFO [04-04|18:09:21.411] State loop started
INFO [04-04|18:09:21.413] Loaded current L2 heads                  unsafe=c6ab3d..1fcdc2:0 safe=c6ab3d..1fcdc2:0 finalized=c6ab3d..1fcdc2:0 unsafe_origin=05bd28..1bcdbc:5627097 safe_origin=05bd28..1bcdbc:5627097
INFO [04-04|18:09:21.715] Walking back L1Block by number           curr=05bd28..1bcdbc:5627097 next=05bd28..1bcdbc:5627097 l2block=c6ab3d..1fcdc2:0
INFO [04-04|18:09:21.715] Hit finalized L2 head, returning immediately unsafe=c6ab3d..1fcdc2:0 safe=c6ab3d..1fcdc2:0 finalized=c6ab3d..1fcdc2:0 unsafe_origin=05bd28..1bcdbc:5627097 safe_origin=05bd28..1bcdbc:5627097
INFO [04-04|18:09:21.715] Sync progress                            reason="reset derivation work" l2_finalized=c6ab3d..1fcdc2:0 l2_safe=c6ab3d..1fcdc2:0 l2_pending_safe=c6ab3d..1fcdc2:0 l2_unsafe=c6ab3d..1fcdc2:0 l2_backup_unsafe=000000..000000:0 l2_time=1,712,229,216 l1_derived=05bd28..1bcdbc:5627097
INFO [04-04|18:09:21.715] completed reset of derivation pipeline   origin=05bd28..1bcdbc:5627097
INFO [04-04|18:09:21.715] Reset of L1Retrieval done                origin=05bd28..1bcdbc:5627097
WARN [04-04|18:09:22.312] tx in inbox with unauthorized submitter  addr=0xcB345995996F26a727873EA70C02C97eE9fd2dfb hash=c37b3f..953a6b err=<nil>
INFO [04-04|18:09:22.312] created new channel                      origin=05bd28..1bcdbc:5627097 channel=3d6447..03bfa5 length=294 frame_number=0 is_last=true
INFO [04-04|18:09:22.312] Reading channel                          channel=3d6447..03bfa5 frames=1
WARN [04-04|18:09:22.312] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,228,983 parent_hash=04a3e9..e5170a batch_epoch=f29fb6..4c69e9:5627073 txs=0 min_timestamp=1,712,229,218
WARN [04-04|18:09:22.312] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,228,988 parent_hash=a892f2..a1294a batch_epoch=f29fb6..4c69e9:5627073 txs=0 min_timestamp=1,712,229,218
WARN [04-04|18:09:22.312] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,228,993 parent_hash=28ebf0..6c2464 batch_epoch=6208eb..644464:5627074 txs=0 min_timestamp=1,712,229,218
WARN [04-04|18:09:22.312] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,228,998 parent_hash=246fe0..04ca87 batch_epoch=6208eb..644464:5627074 txs=0 min_timestamp=1,712,229,218
WARN [04-04|18:09:22.312] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,229,003 parent_hash=c449f7..18638e batch_epoch=6208eb..644464:5627074 txs=0 min_timestamp=1,712,229,218
INFO [04-04|18:09:24.140] Advancing bq origin                      origin=46bae9..979be0:5627098 originBehind=false
WARN [04-04|18:09:24.140] tx in inbox with unauthorized submitter  addr=0x36c727A69F4c8b123E7A879E16b2eb79da357A3b hash=348d5a..9908a6 err=<nil>
WARN [04-04|18:09:24.140] tx in inbox with unauthorized submitter  addr=0x671bA9A3DF8E4c663Bbe8001a55a0E395a729FF3 hash=ce23df..888f97 err=<nil>
WARN [04-04|18:09:24.142] tx in inbox with unauthorized submitter  addr=0xe02C9Aef141d5BBF78Fb20c5D46DA5fAA635Cef7 hash=62e143..7b50c3 err=<nil>
INFO [04-04|18:09:24.142] created new channel                      origin=46bae9..979be0:5627098 channel=73f5b1..9fce40 length=294 frame_number=0 is_last=true
INFO [04-04|18:09:24.142] Reading channel                          channel=73f5b1..9fce40 frames=1
WARN [04-04|18:09:24.142] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,229,008 parent_hash=cc796d..dc4350 batch_epoch=390863..45459d:5627075 txs=0 min_timestamp=1,712,229,218
WARN [04-04|18:09:24.142] dropping batch with old timestamp        batch_type=SingularBatch batch_timestamp=1,712,229,013 parent_hash=70541c..f008f1 batch_epoch=390863..45459d:5627075 txs=0 min_timestamp=1,712,229,218
INFO [04-04|18:10:22.017] created new channel                      origin=06895f..8cbd77:5627137 channel=7c9e9f..55b50c length=214 frame_number=0 is_last=true
INFO [04-04|18:10:22.017] Reading channel                          channel=7c9e9f..55b50c frames=1
INFO [04-04|18:10:22.330] creating new block                       parent=c6ab3d..1fcdc2:0 l1Origin=05bd28..1bcdbc:5627097
WARN [04-04|18:10:22.342] Failed to share forkchoice-updated signal state="&{HeadBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 SafeBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 FinalizedBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2}" err="Post \"http://localhost:8551\": EOF"
ERROR[04-04|18:10:22.342] sequencer failed to start building new block with unclassified error err="failed to start building on top of L2 chain 0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2:0, error (1): failed to create new block via forkchoice: Post \"http://localhost:8551\": EOF"
INFO [04-04|18:10:23.806] Advancing bq origin                      origin=f49dd8..4177a7:5627138 originBehind=false
WARN [04-04|18:10:23.807] tx in inbox with unauthorized submitter  addr=0x36c727A69F4c8b123E7A879E16b2eb79da357A3b hash=35e915..985303 err=<nil>
WARN [04-04|18:10:23.807] tx in inbox with unauthorized submitter  addr=0x5952B49b255822607A7C8A6b0Cf5fDace5C7E313 hash=f6795a..3eaffc err=<nil>
WARN [04-04|18:10:23.808] tx in inbox with unauthorized submitter  addr=0xcB345995996F26a727873EA70C02C97eE9fd2dfb hash=0d3f86..578900 err=<nil>
WARN [04-04|18:10:23.809] tx in inbox with unauthorized submitter  addr=0xe02C9Aef141d5BBF78Fb20c5D46DA5fAA635Cef7 hash=61e853..f63aea err=<nil>
WARN [04-04|18:10:23.809] tx in inbox with unauthorized submitter  addr=0xBDBf78E9E9ff6dbdcC091F31201C351446182B12 hash=28e77d..951bb1 err=<nil>
WARN [04-04|18:10:23.809] tx in inbox with unauthorized submitter  addr=0x73c83707880273BC9C2Dfc1da7d7D8a0b4d75Bcf hash=0ecdaa..077b03 err=<nil>
WARN [04-04|18:10:23.810] tx in inbox with unauthorized submitter  addr=0xA064bD950eCe1CB3410F0974BF8080ca94673B6f hash=0c98a9..93a11e err=<nil>
INFO [04-04|18:10:23.810] created new channel                      origin=f49dd8..4177a7:5627138 channel=96a4e4..5212d2 length=177 frame_number=0 is_last=true
INFO [04-04|18:10:23.810] Reading channel                          channel=96a4e4..5212d2 frames=1
INFO [04-04|18:10:25.191] Advancing bq origin                      origin=ebcaaa..a7b610:5627139 originBehind=false
WARN [04-04|18:10:25.192] tx in inbox with unauthorized submitter  addr=0xBDBf78E9E9ff6dbdcC091F31201C351446182B12 hash=4661c6..301d10 err=<nil>
WARN [04-04|18:10:25.193] tx in inbox with unauthorized submitter  addr=0x5952B49b255822607A7C8A6b0Cf5fDace5C7E313 hash=4d3610..94563e err=<nil>
WARN [04-04|18:10:25.193] tx in inbox with unauthorized submitter  addr=0x73c83707880273BC9C2Dfc1da7d7D8a0b4d75Bcf hash=2181c3..8e4689 err=<nil>
INFO [04-04|18:10:25.193] created new channel                      origin=ebcaaa..a7b610:5627139 channel=ef4304..2e0c43 length=295 frame_number=0 is_last=true
INFO [04-04|18:10:25.193] Reading channel                          channel=ef4304..2e0c43 frames=1
INFO [04-04|18:10:26.564] Advancing bq origin                      origin=af5213..5dc227:5627140 originBehind=false
WARN [04-04|18:10:26.565] tx in inbox with unauthorized submitter  addr=0xcB345995996F26a727873EA70C02C97eE9fd2dfb hash=d3b95b..3da9f6 err=<nil>
WARN [04-04|18:10:26.566] tx in inbox with unauthorized submitter  addr=0xA064bD950eCe1CB3410F0974BF8080ca94673B6f hash=0023db..b3b0b0 err=<nil>
WARN [04-04|18:10:26.567] tx in inbox with unauthorized submitter  addr=0x36c727A69F4c8b123E7A879E16b2eb79da357A3b hash=bb8def..73d69e err=<nil>
WARN [04-04|18:10:26.567] tx in inbox with unauthorized submitter  addr=0xEf1803dbdB8036120f888aB92FBcC5fE49F34267 hash=8e344b..c9a056 err=<nil>
WARN [04-04|18:10:26.568] tx in inbox with unauthorized submitter  addr=0xBDBf78E9E9ff6dbdcC091F31201C351446182B12 hash=6f37b5..7078bf err=<nil>
INFO [04-04|18:10:26.568] created new channel                      origin=af5213..5dc227:5627140 channel=0c2c69..6fe51c length=16906 frame_number=0 is_last=true
INFO [04-04|18:10:26.568] Reading channel                          channel=0c2c69..6fe51c frames=1
INFO [04-04|18:10:28.021] Advancing bq origin                      origin=de153d..34d698:5627141 originBehind=false
WARN [04-04|18:10:28.022] tx in inbox with unauthorized submitter  addr=0x5952B49b255822607A7C8A6b0Cf5fDace5C7E313 hash=46a7ac..297aa7 err=<nil>
WARN [04-04|18:10:28.022] tx in inbox with unauthorized submitter  addr=0x73c83707880273BC9C2Dfc1da7d7D8a0b4d75Bcf hash=d3b346..b155c9 err=<nil>
WARN [04-04|18:10:28.023] tx in inbox with unauthorized submitter  addr=0x36c727A69F4c8b123E7A879E16b2eb79da357A3b hash=280707..6dfead err=<nil>
WARN [04-04|18:10:28.023] tx in inbox with unauthorized submitter  addr=0xBDBf78E9E9ff6dbdcC091F31201C351446182B12 hash=dfaff0..a19ccc err=<nil>
INFO [04-04|18:10:28.023] created new channel                      origin=de153d..34d698:5627141 channel=5029cd..f11afc length=139 frame_number=0 is_last=true
INFO [04-04|18:10:28.023] Reading channel                          channel=5029cd..f11afc frames=1
INFO [04-04|18:10:29.379] Advancing bq origin                      origin=fa1982..03f22b:5627142 originBehind=false
WARN [04-04|18:10:29.380] tx in inbox with unauthorized submitter  addr=0xcB345995996F26a727873EA70C02C97eE9fd2dfb hash=2e9b56..28c122 err=<nil>
INFO [04-04|18:10:29.381] created new channel                      origin=fa1982..03f22b:5627142 channel=953ca7..37e79f length=4948 frame_number=0 is_last=true
INFO [04-04|18:10:29.381] Reading channel                          channel=953ca7..37e79f frames=1
INFO [04-04|18:10:29.704] creating new block                       parent=c6ab3d..1fcdc2:0 l1Origin=05bd28..1bcdbc:5627097
WARN [04-04|18:10:29.707] Failed to share forkchoice-updated signal state="&{HeadBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 SafeBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 FinalizedBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2}" err="Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"
ERROR[04-04|18:10:29.707] sequencer failed to start building new block with unclassified error err="failed to start building on top of L2 chain 0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2:0, error (1): failed to create new block via forkchoice: Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"
INFO [04-04|18:10:31.082] Advancing bq origin                      origin=03243f..b2766f:5627143 originBehind=false

op-geth logs:

./build/bin/geth   --datadir ./datadir   --http   --http.corsdomain="*"   --http.vhosts="*"   --http.addr=0.0.0.0   --http.api=web3,debug,eth,txpool,net,engine   --ws   --ws.addr=0.0.0.0   --ws.port=8546   --ws.origins="*"   --ws.api=debug,eth,txpool,net,engine   --syncmode=full   --gcmode=archive   --nodiscover   --maxpeers=0   --networkid=90003   --authrpc.vhosts="*"   --authrpc.addr=0.0.0.0   --authrpc.port=8551   --authrpc.jwtsecret=./jwt.txt   --rollup.disabletxpoolgossip=true --override.ecotone=0 --override.canyon=0 --override.cancun=0
INFO [04-04|18:09:09.482] Maximum peer count                       ETH=0 total=0
INFO [04-04|18:09:09.483] Smartcard socket not found, disabling    err="stat /run/pcscd/pcscd.comm: no such file or directory"
INFO [04-04|18:09:09.485] Enabling recording of key preimages since archive mode is used
WARN [04-04|18:09:09.486] Disabled transaction unindexing for archive node
INFO [04-04|18:09:09.486] Set global gas cap                       cap=50,000,000
INFO [04-04|18:09:09.486] Initializing the KZG library             backend=gokzg
INFO [04-04|18:09:09.562] Allocated trie memory caches             clean=307.00MiB dirty=0.00B
INFO [04-04|18:09:09.562] Using pebble as the backing database
INFO [04-04|18:09:09.562] Allocated cache and file handles         database=/home/block-93/ecotone-deployment/op-geth/datadir/geth/chaindata cache=512.00MiB handles=524,288
INFO [04-04|18:09:09.579] Opened ancient database                  database=/home/block-93/ecotone-deployment/op-geth/datadir/geth/chaindata/ancient/chain readonly=false
INFO [04-04|18:09:09.579] State scheme set to already existing     scheme=hash
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] ---------------------------------------------------------------------------------------------------------------------------------------------------------
INFO [04-04|18:09:09.590] Chain ID:  90003 (unknown)
INFO [04-04|18:09:09.590] Consensus: Optimism
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] Pre-Merge hard forks (block based):
INFO [04-04|18:09:09.590]  - Homestead:                   #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/homestead.md)
INFO [04-04|18:09:09.590]  - Tangerine Whistle (EIP 150): #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/tangerine-whistle.md)
INFO [04-04|18:09:09.590]  - Spurious Dragon/1 (EIP 155): #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/spurious-dragon.md)
INFO [04-04|18:09:09.590]  - Spurious Dragon/2 (EIP 158): #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/spurious-dragon.md)
INFO [04-04|18:09:09.590]  - Byzantium:                   #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/byzantium.md)
INFO [04-04|18:09:09.590]  - Constantinople:              #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/constantinople.md)
INFO [04-04|18:09:09.590]  - Petersburg:                  #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/petersburg.md)
INFO [04-04|18:09:09.590]  - Istanbul:                    #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/istanbul.md)
INFO [04-04|18:09:09.590]  - Muir Glacier:                #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/muir-glacier.md)
INFO [04-04|18:09:09.590]  - Berlin:                      #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/berlin.md)
INFO [04-04|18:09:09.590]  - London:                      #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/london.md)
INFO [04-04|18:09:09.590]  - Arrow Glacier:               #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/arrow-glacier.md)
INFO [04-04|18:09:09.590]  - Gray Glacier:                #0        (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/gray-glacier.md)
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] Merge configured:
INFO [04-04|18:09:09.590]  - Hard-fork specification:    https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/paris.md
INFO [04-04|18:09:09.590]  - Network known to be merged: true
INFO [04-04|18:09:09.590]  - Total terminal difficulty:  0
INFO [04-04|18:09:09.590]  - Merge netsplit block:       #0       
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] Post-Merge hard forks (timestamp based):
INFO [04-04|18:09:09.590]  - Shanghai:                    @0          (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md)
INFO [04-04|18:09:09.590]  - Cancun:                      @0         
INFO [04-04|18:09:09.590]  - Regolith:                    @0         
INFO [04-04|18:09:09.590]  - Canyon:                      @0         
INFO [04-04|18:09:09.590]  - Ecotone:                     @0         
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] ---------------------------------------------------------------------------------------------------------------------------------------------------------
INFO [04-04|18:09:09.590] 
INFO [04-04|18:09:09.590] Loaded most recent local block           number=0 hash=c6ab3d..1fcdc2 td=0 age=1h25m33s
WARN [04-04|18:09:09.590] Failed to load snapshot                  err="missing or corrupted snapshot"
INFO [04-04|18:09:09.592] Rebuilding state snapshot
INFO [04-04|18:09:09.594] Initialising Ethereum protocol           network=90003 dbversion=<nil>
INFO [04-04|18:09:09.594] Resuming state snapshot generation       root=bbeaf0..344fd6 accounts=0 slots=0 storage=0.00B dangling=0 elapsed=1.637ms
INFO [04-04|18:09:09.594] Initialized transaction indexer          limit=0
INFO [04-04|18:09:09.595] Entered PoS stage
INFO [04-04|18:09:09.596] Regenerated local transaction journal    transactions=0 accounts=0
INFO [04-04|18:09:09.596] Chain post-merge, sync via beacon client
INFO [04-04|18:09:09.597] Gasprice oracle is ignoring threshold set threshold=2
WARN [04-04|18:09:09.599] Engine API enabled                       protocol=eth
INFO [04-04|18:09:09.599] Starting peer-to-peer node               instance=Geth/v0.1.0-unstable-0402d543/linux-amd64/go1.21.6
INFO [04-04|18:09:09.608] IPC endpoint opened                      url=/home/block-93/ecotone-deployment/op-geth/datadir/geth.ipc
INFO [04-04|18:09:09.608] New local node record                    seq=1,712,234,349,607 id=c49e3fb0f8485c79 ip=127.0.0.1 udp=0 tcp=30303
INFO [04-04|18:09:09.608] Started P2P networking                   self="enode://9c7c4010584bbede5684c8d3d76bdb9e1f323b343d1ca4298a9d6ef354c09c3b9618936370dbef37a2387ba7b1c6cc377f135d3142711a98dd398f9fa3a0c46f@127.0.0.1:30303?discport=0"
INFO [04-04|18:09:09.609] Loaded JWT secret file                   path=jwt.txt crc32=0xa6f31773
INFO [04-04|18:09:09.609] HTTP server started                      endpoint=[::]:8545 auth=false prefix= cors=* vhosts=*
INFO [04-04|18:09:09.609] WebSocket enabled                        url=ws://[::]:8546
INFO [04-04|18:09:09.609] WebSocket enabled                        url=ws://[::]:8551
INFO [04-04|18:09:09.609] HTTP server started                      endpoint=[::]:8551 auth=true  prefix= cors=localhost vhosts=*
INFO [04-04|18:09:09.657] Generated state snapshot                 accounts=2333 slots=2088 storage=392.78KiB dangling=0 elapsed=64.704ms
WARN [04-04|18:09:21.412] Served eth_getBlockByNumber              conn=[::1]:59680 reqid=3 duration="49.439µs" err="finalized block not found"
WARN [04-04|18:09:21.412] Served eth_getBlockByNumber              conn=[::1]:59680 reqid=4 duration="21.042µs" err="safe block not found"
INFO [04-04|18:10:22.333] Starting work on payload                 id=0x21878e709c822826
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xf90633]

goroutine 4272 [running]:
github.com/ethereum/go-ethereum/miner.(*worker).prepareWork(0xc0000ff680, 0xc001bfe240)
	github.com/ethereum/go-ethereum/miner/worker.go:1039 +0x733
github.com/ethereum/go-ethereum/miner.(*worker).generateWork(0xc0000ff680, 0xc001bfe240)
	github.com/ethereum/go-ethereum/miner/worker.go:1102 +0x50
github.com/ethereum/go-ethereum/miner.(*worker).mainLoop(0xc0000ff680)
	github.com/ethereum/go-ethereum/miner/worker.go:558 +0x44c
created by github.com/ethereum/go-ethereum/miner.newWorker in goroutine 1
	github.com/ethereum/go-ethereum/miner/worker.go:296 +0x856


rollup.json:

{
  "genesis": {
    "l1": {
      "hash": "0x05bd28511faf0288f489c66496fb1499374ac180757ca35a57110320851bcdbc",
      "number": 5627097
    },
    "l2": {
      "hash": "0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2",
      "number": 0
    },
    "l2_time": 1712229216,
    "system_config": {
      "batcherAddr": "0xf663792be0edd00affb8bbe4ac6d8185efd5671d",
      "overhead": "0x0000000000000000000000000000000000000000000000000000000000000834",
      "scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240",
      "gasLimit": 30000000
    }
  },
  "block_time": 2,
  "max_sequencer_drift": 600,
  "seq_window_size": 3600,
  "channel_timeout": 300,
  "l1_chain_id": 11155111,
  "l2_chain_id": 90003,
  "regolith_time": 0,
  "canyon_time": 0,
  "batch_inbox_address": "0xff00000000000000000000000000000000042069",
  "deposit_contract_address": "0xa8d964125778a387c3de8275ac368a2c5abc62db",
  "l1_system_config_address": "0xa7128eb906566ad7bce6f2e8656a834808cabd13",
  "protocol_versions_address": "0x0000000000000000000000000000000000000000",
  "da_challenge_address": "0x0000000000000000000000000000000000000000",
  "da_challenge_window": 0,
  "da_resolve_window": 0,
  "delta_time":0,
  "ecotone_time":0,
  "use_plasma": false
}

@sbvegan
Copy link
Collaborator

sbvegan commented Apr 4, 2024

@nitantchhajed I'm not sure why its panicking, but the first thing I'd like you to check is your engine-api connection, because it appears the op-node and op-geth cannot talk to each other. It seems that the ports line up --authrpc.port=8551 on op-geth and --l2=http://localhost:8551 on op-node.

WARN [04-04|18:10:29.707] Failed to share forkchoice-updated signal state="&{HeadBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 SafeBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 FinalizedBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2}" err="Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"
ERROR[04-04|18:10:29.707] sequencer failed to start building new block with unclassified error err="failed to start building on top of L2 chain 0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2:0, error (1): failed to create new block via forkchoice: Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"

Meta-note: we suggest using a websockets for your engine-api connection for marginal performance improvements (i.e. --l2=ws://localhost:8551).

@nitantchhajed
Copy link
Contributor

@nitantchhajed I'm not sure why its panicking, but the first thing I'd like you to check is your engine-api connection, because it appears the op-node and op-geth cannot talk to each other. It seems that the ports line up --authrpc.port=8551 on op-geth and --l2=http://localhost:8551 on op-node.

WARN [04-04|18:10:29.707] Failed to share forkchoice-updated signal state="&{HeadBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 SafeBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2 FinalizedBlockHash:0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2}" err="Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"
ERROR[04-04|18:10:29.707] sequencer failed to start building new block with unclassified error err="failed to start building on top of L2 chain 0xc6ab3d645e162465033a38732479e0cf33d777d127ef15a8eaadfd4d7c1fcdc2:0, error (1): failed to create new block via forkchoice: Post \"http://localhost:8551\": dial tcp [::1]:8551: connect: connection refused"

Meta-note: we suggest using a websockets for your engine-api connection for marginal performance improvements (i.e. --l2=ws://localhost:8551).

@sbvegan the op-node and op-geth cannot talk to each other because op-geth is panicking

@sbvegan
Copy link
Collaborator

sbvegan commented Apr 4, 2024

@nitantchhajed okay let me get some protocol engineer eyes on this, I'll see if someone can take a look today, but I also have some synchronous time with them tomorrow morning so expect a reply from me by tomorrow afternoon (PT).

@sbvegan
Copy link
Collaborator

sbvegan commented Apr 4, 2024

@nitantchhajed can you specify your versions you're using:

@nitantchhajed
Copy link
Contributor

@nitantchhajed can you specify your versions you're using:

Correct, I'm using these versions only.

@nitantchhajed
Copy link
Contributor

nitantchhajed commented Apr 7, 2024

@zchn @sbvegan Looks like there were some configuration parameters were missing from the config script which caused the genesis generation without the ecotone & delta timestamps. I looked into the optimism codebase and the op-node genesis/cmd.go file which is used to create genesis and rollup had missing inputs for ecotone and delta. so I took the configuration parameters from op-chain-ops/genesis/config.go file and added it in my deploy-config/race.json file, then generated the genesis and rollup using the command. It worked and passed all the tests through each _test.go file present in superchain-registry repo.

CC @geoknee @RACEcommunity

nitantchhajed

This comment was marked as resolved.

@zchn zchn enabled auto-merge (squash) April 8, 2024 16:33
@zchn zchn self-requested a review April 8, 2024 16:36
auto-merge was automatically disabled April 9, 2024 10:36

Head branch was pushed to by a user without write access

@zchn
Copy link
Contributor

zchn commented Apr 16, 2024

Hi @nitantchhajed ,

Sorry for the delay in responses and thank you for your patience.

All technical checks have now passed and this PR is ready to be merged in (there is a small issue around file permissions, I'll make a comment separately), though please note this is blocked pending having a signed agreement.

Almost there! Once the agreement is signed we can merge this in. Our BD team is in contact with RACE to get us over the finish line.

zchn
zchn previously requested changes Apr 16, 2024
@zchn zchn removed their assignment May 23, 2024
@sbvegan sbvegan self-assigned this May 23, 2024
Copy link
Collaborator

@sbvegan sbvegan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All clear on BD side too, thanks for your patience. I'll get an codeowner to get this through

@sbvegan sbvegan dismissed zchn’s stale review May 28, 2024 18:56

no longer a codeowner

@zchn zchn merged commit a4d121e into ethereum-optimism:main May 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

M-new-chain-request Meta: New Chain Request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants