Skip to content

Feature request: simple option to fast-forward ledgers in --local mode #932

@teddav

Description

@teddav

Quickstart is great for local development. It would be great to add a feature for advancing ledgers quickly.

What I'm trying to do

When testing against --local, the network starts at ledger 1, which doesn't look or behave much like testnet/mainnet (where ledger numbers are in the millions and time has visibly passed). I'd like a way to quickly fast-forward to a higher ledger number. Both for realistic UI testing and for exercising time-based contract logic without waiting a long time.

What I tried

I went down the ENABLE_CORE_MANUAL_CLOSE=true + curl /manualclose path. It works in principle but isn't really convenient:

  • Throughput is heavily bottlenecked when horizon/rpc are also enabled (their captive cores fall behind and constantly catch up). To get reasonable speed I had to disable everything except core, burn ledgers, then restart with horizon/rpc. But that two-phase workflow hits other rough edges: friendbot autostarts and crashes when horizon is disabled, taking down the container.
  • It's not obvious from the docs which env vars actually exist vs. don't. I tried things like STELLAR_CORE_FLAGS, ENABLE_FRIENDBOT, etc. that turned out to be silently ignored. The set of supported env vars and flags also seems to change between image versions, so older tutorials, or responses on Discord point at things that no longer work.

What would be ideal

An endpoint to automatically advance by N ledgers

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Backlog (Not Ready)

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions