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

Preloaded contracts and electra cause teku to crash #911

Open
Rjected opened this issue Feb 28, 2025 · 1 comment
Open

Preloaded contracts and electra cause teku to crash #911

Rjected opened this issue Feb 28, 2025 · 1 comment

Comments

@Rjected
Copy link

Rjected commented Feb 28, 2025

When I use teku, an electra fork epoch of 0, and a preloaded contract, I get the following error:

My kurtosis.yml:

ethereum_package:
  participants:
    - el_type: reth
      el_extra_params:
        - "--rpc.eth-proof-window=100"
      cl_type: teku
  network_params:
    electra_fork_epoch: 0
    additional_preloaded_contracts: |
      {
        "0x4e59b44847b379578588920cA78FbF26c0B4956C": {
          "balance": "0ETH",
          "code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3",
          "storage": {},
          "nonce": "1"
        }
      }

I end up getting this:

Adding service with name 'cl-1-teku-reth' and image 'consensys/teku:latest'
There was an error executing Starlark code
An error occurred executing instruction (number 29) at github.com/ethpandaops/ethereum-package/src/cl/teku/teku_launcher.star[79:38]:
  add_service(name="cl-1-teku-reth", config=ServiceConfig(image="consensys/teku:latest", ports={"http": PortSpec(number=4000, transport_protocol="TCP", application_protocol="http"), "metrics": PortSpec(number=8008, transport_protocol="TCP", application_protocol="http"), "tcp-discovery": PortSpec(number=9000, transport_protocol="TCP", application_protocol=""), "udp-discovery": PortSpec(number=9000, transport_protocol="UDP", application_protocol="")}, public_ports={}, files={"/jwt": "jwt_file", "/network-configs": "el_cl_genesis_data", "/validator-keys": "1-teku-reth-0-63"}, cmd=["--logging=INFO", "--log-destination=CONSOLE", "--network=/network-configs/config.yaml", "--data-path=/data/teku/teku-beacon-data", "--data-storage-mode=ARCHIVE", "--p2p-enabled=true", "--p2p-peer-lower-bound=1", "--p2p-advertised-ip=KURTOSIS_IP_ADDR_PLACEHOLDER", "--p2p-discovery-site-local-addresses-enabled=true", "--p2p-port=9000", "--rest-api-enabled=true", "--rest-api-docs-enabled=true", "--rest-api-interface=0.0.0.0", "--rest-api-port=4000", "--rest-api-host-allowlist=*", "--data-storage-non-canonical-blocks-enabled=true", "--ee-jwt-secret-file=/jwt/jwtsecret", "--ee-endpoint=http://{{kurtosis:70a0b720b64645d3ad4f2ee3ac8bbd45:ip_address.runtime_value}}:8551", "--metrics-enabled", "--metrics-interface=0.0.0.0", "--metrics-host-allowlist=*", "--metrics-categories=BEACON,PROCESS,LIBP2P,JVM,NETWORK,PROCESS", "--metrics-port=8008", "--ignore-weak-subjectivity-period-enabled=true", "--initial-state=/network-configs/genesis.ssz", "--validator-keys=/validator-keys/teku-keys:/validator-keys/teku-secrets", "--validators-proposer-default-fee-recipient=0x8943545177806ED17B9F23F0a21ee5948eCaa776", "--validators-graffiti=1-reth-teku"], env_vars={}, private_ip_address_placeholder="KURTOSIS_IP_ADDR_PLACEHOLDER", ready_conditions=ReadyCondition(recipe=GetHttpRequestRecipe(port_id="http", endpoint="/eth/v1/node/health"), field="code", assertion="IN", target_value=[200, 206], timeout="15m"), labels={"ethereum-package.client": "teku", "ethereum-package.client-image": "consensys-teku_latest", "ethereum-package.client-type": "beacon", "ethereum-package.connected-client": "reth", "ethereum-package.sha256": ""}, user=User(uid=0, gid=0), tolerations=[], node_selectors={}))
  Caused by: Unexpected error occurred starting service 'cl-1-teku-reth'
  Caused by: An error occurred waiting for all TCP and UDP ports to be open for service 'cl-1-teku-reth' with private IP '172.16.0.11'; this is usually due to a misconfiguration in the service itself, so here are the logs:
  == SERVICE 'cl-1-teku-reth' LOGS ===================================
  2025-02-28 18:10:45.297 WARN  - Ignoring unknown items in network configuration: FULU_FORK_EPOCH,WHISK_EPOCHS_PER_SHUFFLING_PHASE,MAX_BLOBS_PER_BLOCK_FULU,WHISK_PROPOSER_SELECTION_GAP,EIP7732_FORK_EPOCH,MAX_REQUEST_PAYLOADS,EIP7805_FORK_EPOCH,MAX_REQUEST_DATA_COLUMN_SIDECARS,NUMBER_OF_COLUMNS,GOSSIP_MAX_SIZE,TARGET_BLOBS_PER_BLOCK_ELECTRA,FULU_FORK_VERSION,CUSTODY_REQUIREMENT,EIP7732_FORK_VERSION,DATA_COLUMN_SIDECAR_SUBNET_COUNT,EIP7805_FORK_VERSION,NUMBER_OF_CUSTODY_GROUPS,SAMPLES_PER_SLOT,MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS
  2025-02-28 18:10:45.557 INFO  - Teku version: teku/v25.2.0/linux-aarch_64/-eclipseadoptium-openjdk64bitservervm-java-21
  2025-02-28 18:10:45.558 INFO  - This software is licensed under the Apache License, Version 2.0 (the "License"); you may not use this software except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
  2025-02-28 18:10:45.625 INFO  - Configuration | Network: empty, Storage Mode: ARCHIVE
  2025-02-28 18:10:45.625 INFO  - Host Configuration | Maximum Heap Size: 7.83 GB, Total Memory: 31.30 GB, CPU Cores: 10
  2025-02-28 18:10:45.625 INFO  - Rest Api Configuration | Enabled: true, Listen Address: 0.0.0.0, Port: 4000, Allow: [*]
  2025-02-28 18:10:45.625 INFO  - Validator Api Configuration | Listen Address: 0.0.0.0, Port 5052, Allow: [127.0.0.1, localhost]
  2025-02-28 18:10:45.832 INFO  - JWT secret loaded from /jwt/jwtsecret
  2025-02-28 18:10:45.833 INFO  - Using execution engine at http://172.16.0.10:8551
  2025-02-28 18:10:45.833 INFO  - Enabling Builder Circuit Breaker
  2025-02-28 18:10:45.892 INFO  - Storing beacon chain data in: /data/teku/teku-beacon-data/beacon
  2025-02-28 18:10:45.898 INFO  - jemalloc library not found.
  2025-02-28 18:10:45.898 INFO  - Starting metrics http service on 0.0.0.0:8008
  2025-02-28 18:10:45.918 INFO  - Beacon data directory set to: /data/teku/teku-beacon-data/beacon
  2025-02-28 18:10:45.956 INFO  - BLS: loaded BLST library
  2025-02-28 18:10:45.962 INFO  - Created leveldb2 Hot and Finalized database (leveldb2) at /data/teku/teku-beacon-data/beacon/db
  2025-02-28 18:10:45.983 INFO  - Loading 64 validator keys...
  2025-02-28 18:10:46.009 INFO  - Using default implementation for ThreadExecutor
  2025-02-28 18:10:46.027 INFO  - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
  2025-02-28 18:10:46.028 INFO  - Quartz Scheduler v2.5.0 created.
  2025-02-28 18:10:46.028 INFO  - RAMJobStore initialized.
  2025-02-28 18:10:46.029 INFO  - Scheduler meta-data: Quartz Scheduler (v2.5.0) 'QuartzScheduler' with instanceId 'NON_CLUSTERED'
    Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
    NOT STARTED.
    Currently in standby mode.
    Number of jobs executed: 0
    Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 1 threads.
    Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.

  2025-02-28 18:10:46.029 INFO  - Quartz scheduler 'QuartzScheduler' initialized from an externally provided properties instance.
  2025-02-28 18:10:46.029 INFO  - Quartz scheduler version: 2.5.0
  2025-02-28 18:10:46.039 INFO  - Loaded validator key 10 of 64.
  2025-02-28 18:10:46.040 INFO  - Loaded validator key 20 of 64.
  2025-02-28 18:10:46.041 INFO  - Loaded validator key 30 of 64.
  2025-02-28 18:10:46.043 INFO  - Loaded validator key 40 of 64.
  2025-02-28 18:10:46.044 INFO  - Loaded validator key 50 of 64.
  2025-02-28 18:10:46.045 INFO  - Loaded validator key 60 of 64.
  2025-02-28 18:10:46.047 INFO  - Loaded 64 Validators: 96947de, 81b6765, a62c020, a0485d7, a1d9840, 84a687f, 9763dde, ad9222d, a804e4f, b27ad13, 8419cf0, 8723142, 8dfa86c, a03c2a8, b63f327, 84d08d5, 81fa222, a75ca94, 996323a, b222557, b5e898a, a4ee6d3, ae53027, 8fda66b, ae940a0, b72cb10, 86e0147, 996d10c, 8d46e9a, b570dde, 8aa5bbe, 8de5a62, 930743b, 8d8985e, 958c269, a759f6b, 8a8bb29, 91709ee, a2e2d83, ac69ae9, 84dc37c, 9918433, b09cb15, a8fa358, a54fe5c, 8725b32, af61f26, ab40dc1, 8d028a0, 99d83a0, b24391a, 81ea9f7, 8aec512, a35c600, afa10af, 8c0d15b, aaddb0c, ab64f90, abd1267, ab72cbc, aaf6c12, 896a51e, a1584df, af89ab0
  2025-02-28 18:10:46.047 INFO  - Initializing storage
  2025-02-28 18:10:46.048 INFO  - validator-api-enabled is false, not starting rest api.
  2025-02-28 18:10:46.049 INFO  - Empty storage. Initialization complete.
  2025-02-28 18:10:46.049 WARN  - Ignoring weak subjectivity period check (--ignore-weak-subjectivity-period-enabled). Syncing from outside of the weak subjectivity period is considered UNSAFE.
  2025-02-28 18:10:46.050 INFO  - Loading initial state from /network-configs/genesis.ssz
  Failed to load initial state from /network-configs/genesis.ssz
  2025-02-28 18:10:46.081 FATAL - Failed to load initial state from /network-configs/genesis.ssz
  tech.pegasys.teku.infrastructure.exceptions.InvalidConfigurationException: Failed to load initial state from /network-configs/genesis.ssz
  at tech.pegasys.teku.services.beaconchain.WeakSubjectivityInitializer.lambda$loadInitialAnchorPoint$0(WeakSubjectivityInitializer.java:77) ~[teku-services-beaconchain-25.2.0.jar:25.2.0]
@Rjected
Copy link
Author

Rjected commented Feb 28, 2025

Note: electra at genesis also does not seem to work with lighthouse or prysm, so this may not be a teku-specific issue. Lighthouse crashes with a ssz error, prysm does not, but sends the EL an incorrect genesis hash when attempting to build the first block with a forkchoiceUpdated message.

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

1 participant