Skip to content

Node Hangs on Cold Start with External Signer + Batch Poster #4208

@Bidon15

Description

@Bidon15

Fresh node startup hangs indefinitely when batch-poster.enable=true with external signer configuration. The hang occurs after TLS certificate loading but before HTTP server starts.

Environment

  • Nitro Version: main 1f915ab
  • Parent Chain: Sepolia
  • Configuration: External signer for batch poster with mTLS client certificates

Configuration

--node.batch-poster.enable=true
--node.batch-poster.data-poster.external-signer.url=<url>
--node.batch-poster.data-poster.external-signer.address=<address>
--node.batch-poster.data-poster.external-signer.method=eth_signTransaction
--node.batch-poster.data-poster.external-signer.client-cert=/certs/client.crt
--node.batch-poster.data-poster.external-signer.client-private-key=/certs/client.key
--node.batch-poster.data-poster.external-signer.root-ca=/certs/ca.crt
--node.staker.enable=false

Steps to Reproduce

  1. Deploy a new Orbit chain
  2. Start node with above configuration and empty data directory
  3. Node hangs indefinitely

Observed Behavior

Last logs before hang:

INFO [...] DA providers configured                  totalWriters=1
INFO [...] Client certificate for external signer is enabled

Node never reaches:

INFO [...] HTTP server started endpoint=[::]:8547

Key Observations

  1. Cold start hangs: Fresh data directory + batch-poster + external-signer = hang
  2. Warm start works: If node is first started with batch-poster.enable=false, then restarted with batch-poster.enable=true, it works
  3. Certificate logs appear twice: Even with staker disabled, the "Client certificate for external signer is enabled" message appears twice before the hang

Workaround

# 1. Start with batch-poster disabled
--node.batch-poster.enable=false

# 2. Wait for HTTP server to start

# 3. Restart with batch-poster enabled
--node.batch-poster.enable=true

Node starts successfully after this sequence.

Notes

  • External signer is reachable (verified independently)
  • Alt-DA is used
  • Certificates are valid (log message confirms successful loading)
  • Issue only occurs on fresh/cold start
  • Once database is initialized, subsequent restarts with batch-poster enabled work fine

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions