We could measure very little of erigon-xdc. The only erigon-xdc node, on Apothem, was re-syncing from block 0 when we probed it. We could not measure its head lag or its RPC answers. We read only its datadir size and its memory, and those two values are not like for like with xOne nodes that are synced.

erigon-xdc is an XDCIndia client, like xOne. This post is a neutral record of one probe, not a contest. It also lists what the project has published about erigon-xdc, next to the matching xOne facts.

What did we measure on erigon-xdc?

We read the datadir size, the memory of the process and the sync state. The node ran on Apothem with --prune.mode minimal, and it was also set up as a producer. No erigon-xdc node runs on net2040, so nothing was measured there.

Measured read-only on 2026-11-14 at 19:20 UTC by the xOne team on its own follower nodes; one sample, not a time series. Source: xOne team measurement, 2026-11-14 19:20 UTC.

What the node reported at the probe:

  • eth_blockNumber returned 0x0.
  • eth_syncing gave currentBlock 0x0 and highestBlock 0x516bfe7 (85,376,999). Every stage was at 0.
  • The process had run for 1,330 s.
  • The reference head, a geth-XDC node on Apothem in snap mode, was 85,385,427.

How did we measure?

We called eth_blockNumber on each node. Head lag is the reference head minus the node head, read at the same second. The reference is a geth-XDC node of the same network.

  • Datadir: du -sx --block-size=1 of the datadir.
  • Memory: VmRSS of the main process, from /proc. RssAnon is heap. RssFile is mapped files. An MDBX or RocksDB map counts as RssFile. We compare RssAnon where both values were read. xOnePy runs extra worker processes that we did not count.
  • RPC sample: 50 calls per node against the node and the reference. They were 30 eth_getBlockByNumber(n,false) for n = head-130 to head-101, 10 eth_getBlockTransactionCountByNumber for the last 10 of those, and 10 eth_getBlockByHash(hash,false) for the first 10 hashes. We compared the whole JSON after we lowercased strings. We also compared the core fields: hash, parentHash, stateRoot, receiptsRoot, transactionsRoot, number, miner, gasUsed and timestamp. On the xOne rows below, whole JSON was equal and the core fields matched in all 40 block objects.

Which Apothem rows sit next to erigon-xdc?

Here are the Apothem rows of the xOne clients and the erigon-xdc row. "Not measured" means the node could not give the value.

REFERENCE TABLEScroll to explore all columns →
Node Mode Head Lag Datadir bytes (GB) VmRSS kB RssAnon kB RssFile kB RPC whole-JSON equal
erigon-xdc --prune.mode minimal, re-syncing 0 not measurable 92,021,571,584 (92.02) 4,381,420 4,023,292 260,424 not measured
xOneRS snap 85,385,428 -1 75,107,868,672 (75.11) 519,008 489,112 33,192 50 of 50
xOnePy snap 85,385,428 -1 31,119,683,584 (31.12) 179,856 166,264 14,236 50 of 50
xOneC snap 85,385,428 -1 51,045,007,360 (51.05) 10,107,556 349,504 9,793,144 50 of 50

A lag of -1 means the node was one block ahead of the reference at that second. xOneTS has no Apothem row.

Can we compare datadir and memory with erigon-xdc?

No, not like for like. The erigon-xdc node had every stage at 0 and had run for 1,330 s. Its datadir and memory describe a node at the start of a sync. A synced node will read differently. We draw no conclusion from the 92.02 GB or the 4,023,292 kB.

The pruning mode also differs. The erigon-xdc node used --prune.mode minimal. The xOne rows are snap nodes. The name "minimal" is also an xOne mode, --minimal, but the two are different things: in xOne it starts a node from a snapshot file (sync modes). The xOneC RssFile of 9,793,144 kB is mapped files, not heap. Read its RssAnon of 349,504 kB. For disk and memory in xOne, see hardware and disk.

What has the project published about erigon-xdc?

The project notes list erigon-xdc releases, a mint result and a parity document. The erigon-xdc repository, XDCIndia/erigon-xdc, is private, so we link it without reading it here.

REFERENCE TABLEScroll to explore all columns →
Topic erigon-xdc, as listed in the project notes xOne, from posts on this site
Releases v3.8.1-xdc.1, v3.8.1-xdc.2 and v3.5.2-xdc.1 Latest tags: xOneRS v0.1.0, xOneTS v0.1.0, xOnePy v0.1.1, xOneC v0.1.0 (xOneRS releases)
Mint Release v-xdc-erigon-mint-20260727: fair share 14.2% (ideal 14.29%) on a 7-member set net2040, 14 seats, blocks 814,798 to 840,174: 7.11% to 7.24% of 25,377 blocks, against a fair share of 7.14% (four-client fair mint)
Consensus parity CONSENSUS_PARITY.md: Apothem genesis hash match, 6 state-root divergences fixed Replay against geth-XDC archive headers at 0 mismatches: Apothem 0..=432,000 and net2040 30,001..=754,336 (RUNS.md)
Producer flags --xdc.v2.produce --xdc.v1.signerkey --mine. xOneRS refuses it on chain id 50 (producer.rs)

The mint rows are not like for like. A 7-member set has an ideal share of 14.29%, and 14 seats have 7.14%. Compare each result with the ideal of its own set. The parity rows count different things: the erigon-xdc note names divergences it fixed, and the xOne rows count mismatches in replayed ranges. See also xOne against geth-XDC.

What does a fair comparison need?

A fair erigon-xdc comparison needs two things. It needs a synced erigon-xdc node, and it needs the same sample.

  • A synced node. The node must be at the head on Apothem, with its stages complete.
  • The same sample. The same method: head lag against a reference at one second, datadir by du, VmRSS with RssAnon and RssFile, and the same 50 RPC calls with the same core fields.

Until then, this post makes no claim on erigon-xdc head lag, RPC shape, or memory and disk when synced. For the networks, see networks.

Correction

On 2026-11-15 we removed an Apothem row that was labelled "xOneRS snap (second node)". That node reports the version xOne/v1.1.0/linux-amd64/go1.25.0: it runs xOneGo, the earlier Go line, not xOneRS. The other rows are unchanged.

Frequently asked questions

Is xOne faster or smaller than erigon-xdc?

We cannot say. The only erigon-xdc node was re-syncing from block 0 when we probed it, so head lag and RPC could not be measured, and its datadir and memory are not like for like.

Does erigon-xdc run on net2040?

No erigon-xdc node runs on net2040, so nothing was measured there.

Is the erigon-xdc source public?

No. The repository XDCIndia/erigon-xdc is private. The claims in this post come from the project notes.

Sources