Skip to content

Digitalia Archive Node — User Manual

Purpose

This manual is for Archive Node operators and technical users who run historical blockchain queries and need practical daily operating procedures.


1. What Makes Archive Node Different

Compared to a standard full node, an archive node retains historical state needed for deep block-height queries.

Use Archive Node when you need:

  • historical balances at old blocks
  • historical storage slot reads
  • long-range analytics and auditing

2. First-Time Startup Checks

  1. Start the archive node with persistent volumes.
  2. Confirm liveness endpoint responds.
  3. Check dvm_syncing until result is false.
  4. Confirm block height increases over time.

Basic checks:

curl -sf http://localhost:8545/health/live
curl -s -X POST http://localhost:8545 \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","method":"dvm_syncing","params":[],"id":1}'

3. Daily Operator Workflow

Start-of-day:

  1. confirm node process/container is healthy
  2. confirm peer count is non-zero
  3. confirm block height is advancing
  4. run one historical query smoke test

During operations:

  • monitor sync lag and disk growth
  • monitor RPC latency for user-facing endpoints
  • capture failed query examples for escalation

End-of-day:

  • verify no critical alerts unresolved
  • confirm backups/snapshots status if scheduled

4. Common RPC Queries

4.1 Peer count

curl -s -X POST http://localhost:8545 \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":1}'

4.2 Current block

curl -s -X POST http://localhost:8545 \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","method":"dvm_blockNumber","params":[],"id":1}'

4.3 Historical balance

curl -s -X POST http://localhost:8545 \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","method":"dvm_getBalance","params":["0x0000000000000000000000000000000000000001","0x1"],"id":1}'

5. Troubleshooting

5.1 Sync takes too long

  • verify peer count and connectivity
  • verify storage throughput and available space
  • compare current block to network head over interval

5.2 Historical queries return errors

  • ensure node is archive mode
  • ensure block identifier is valid
  • inspect logs for state/trie corruption signals

5.3 RPC unavailable

  • verify process/container status
  • verify port exposure and firewall policies
  • restart node and re-run health checks

5.4 Disk usage rapidly growing

  • validate expected growth profile
  • increase volume before reaching 80% threshold
  • review query workload and data retention policy

6. Security Practices

  • expose RPC only to approved consumers
  • avoid sharing admin-level node endpoints publicly
  • keep software and image tags up to date
  • separate operational credentials from app-level credentials

7. Escalation Data Checklist

When escalating an issue, provide:

  • image tag/version
  • deployment mode (Docker/Kubernetes)
  • outputs for dvm_syncing, net_peerCount, dvm_blockNumber
  • one failing query sample with timestamp
  • relevant log excerpt

8. Documentation Map

  • docs/ARCHIVE_NODE_USER_MANUAL.md (this file)
  • docs/ARCHIVE_NODE_ADMINISTRATOR_GUIDE.md
  • JFOS_ARCHIVE_NODE_PRODUCTION_OPS_RUNBOOK.md
  • docs/FULL_NODE_USER_MANUAL.md