github XinFinOrg/XDPoSChain v2.9.3-testnet

pre-release4 hours ago

Testnet Only Version, don't deploy to mainnet environment

Release Notes

Changes compared with the previous testnet release v2.9.2-testnet. For the full list of changes since mainnet v2.7.1, see the v2.9.1-testnet and v2.9.2-testnet release notes.

๐Ÿš€ Highlights

  • Fast sync now completes after it is interrupted. Before, a resumed sync with a configured pivot kept failing with gap pivot block <N> not found in downloaded results and the head stayed at genesis.
  • Fast sync with an automatic pivot now stores the XDPoS V2 gap snapshots below the pivot. Before, the node stopped at the first epoch switch after the pivot with gap snapshot is unavailable.
  • The mainnet V2 config now has the round 17579700 entry that ships in v2.7.1.

๐Ÿ›  Stability & Bug Fixes

Fast Sync (#2753, #2754)

  • When a gap pivot block isn't among the blocks downloaded in the current cycle, its header is read from the local chain by walking parent hashes back from the pivot.
  • An automatic-pivot fast sync (head โˆ’ 64) now syncs the gap block states below the pivot and builds their snapshots before committing it, just as a configured pivot (--fastsyncpivotnumber) does.
  • This also covers nodes that switched to fast sync on their own. That happens when a rollback leaves the head block at genesis while the snap head is ahead, even on SYNC_MODE=full nodes.
  • Behaviour change: an automatic-pivot fast sync now needs a peer that can serve the gap block state, about 500 to 1,400 blocks behind the head. In practice that is an archive node. Without one, the sync waits in the gap state sync instead of committing a pivot that would stop at the next epoch switch.

Chain Config (#2778)

  • Added the missing mainnet MainnetV2Configs entry at round 17579700 (TimeoutPeriod: 60, MaxMasternodes: 108) to params and the embedded genesis/mainnet.json. Without it, mainnet nodes on this branch kept TimeoutPeriod: 10 from round 3200000. Testnet config is unchanged.

๐Ÿงน Maintenance & Logging

  • A WARN log when the node re-enables fast sync because the head block is at genesis but the snap head is ahead. Before, this switch was not logged at all.
  • INFO logs for the automatic fast sync pivot and for the gap blocks being synced below it.
  • New tests: TestFastSyncGapPivotResumesAfterInterruption, TestFastSyncAutoPivotGapSnapshot, TestGapPivotNumbersWithoutXDPoS.

Full Changelog: v2.9.2-testnet...v2.9.3-testnet

Don't miss a new XDPoSChain release

NewReleases is sending notifications on new releases.