My goal was to set up a small test network with two stellar nodes. Therefor, I forked the quickstart repo and made some small adjustments. I changed the public key and the network passphrase.
On my local computer I set up an adapted version of the testnet configuration from the same repo. I only changed the validators and replaced them my with my stand alone node. As you can see in the following output of my cfg
file.
HTTP_PORT=11626
PUBLIC_HTTP_PORT=true
LOG_FILE_PATH=""
NETWORK_PASSPHRASE="Edu Net; March 2020"
DATABASE="postgresql://dbname=core host=localhost user=stellar password=__PGPASS__"
UNSAFE_QUORUM=true
FAILURE_SAFETY=0
CATCHUP_RECENT=100
[HISTORY.cache]
get="cp /opt/stellar/history-cache/{0} {1}"
[[HOME_DOMAINS]]
HOME_DOMAIN="{domain}.edu"
QUALITY="LOW"
[[VALIDATORS]]
NAME="node_1"
HOME_DOMAIN="{domain}.edu"
PUBLIC_KEY="{PUBLIC_KEY}"
ADDRESS="95.217.87.26:11625"
HISTORY="curl -sf http://{IP}:1570/{0} -o {1}"
This is the horizon .env file
export DATABASE_URL="postgres://stellar:stellar@localhost/horizon"
export STELLAR_CORE_DATABASE_URL="postgres://stellar:stellar@localhost/core"
export STELLAR_CORE_URL="http://localhost:11626"
export LOG_LEVEL="info"
export INGEST="true"
# It's fine for CATCHUP_RECENT stellar-core.
export INGEST_FAILED_TRANSACTIONS="true"
export PER_HOUR_RATE_LIMIT="72000"
export NETWORK_PASSPHRASE="Edu Net; March 2020"
export DISABLE_ASSET_STATS="true"
export HISTORY_ARCHIVE_URLS="http://{IP}:1570"
When I now start the local node it is not updating the state of it. The horizon api says:
...
"horizon_version": "v1.0.0",
"core_version": "v12.4.0",
"ingest_latest_ledger": 0,
"history_latest_ledger": 0,
"history_elder_ledger": 0,
"core_latest_ledger": 1,
"network_passphrase": "Edu Net; March 2020",
"current_protocol_version": 0,
"core_supported_protocol_version": 12
When I look at the supervisor output there are many errors in the horizon stderror log.
time="2020-03-23T19:21:52.557Z" level=error msg="Error in ingestion state machine" current_state="buildFromCheckpoint(checkpointLedger=30015)" error="Error ingesting history archive: Error validating bucket list from HAS: cannot validate bucket hash list. Checkpoint ledger (30015) must exist in Stellar-Core database." next_state=start pid=131 service=expingest
time="2020-03-23T19:21:53.558Z" level=info msg="Ingestion system state machine transition" current_state="buildFromCheckpoint(checkpointLedger=30015)" next_state=start pid=131 service=expingest
time="2020-03-23T19:21:54.913Z" level=info msg="Ingestion system state machine transition" current_state=start next_state="buildFromCheckpoint(checkpointLedger=30015)" pid=131 service=expingest
time="2020-03-23T19:21:54.923Z" level=info msg="Starting ingestion system from empty state..." pid=131 service=expingest
time="2020-03-23T19:21:54.958Z" level=info msg="Processing state" ledger=30015 pid=131 service=expingest
Here it says error="Error ingesting history archive: Error validating bucket list from HAS: cannot validate bucket hash list. Checkpoint ledger (30015) must exist in Stellar-Core database."
The problem does not occur when I use the testnet validators.
I am not sure where I messed up my configuration. Thank you so much for your help.