github XinFinOrg/XDPoSChain v2.6.6-testnet

pre-release10 hours ago

Performance Improvements

  • Pre-allocate memory for slices and maps (XFN-148).
  • Optimized CompareSignersLists.
  • Improved cached-prev comparison logic in core (XFN-96).
  • Performance boosts in ChaindbCompact() / ChaindbProperty() (XFN-139).
  • Faster unique signature verification (XFN-03).
  • Reduced overuse of log.Crit, improved logging efficiency.
  • Improved txpool performance and reduced lock contention.
  • More efficient future block handling logic (XFN-101).

Ethereum EIPs / Protocol & Consensus Enhancements

  • Multiple XDPoS V2 validation and parameter fixes (XFN-45, XFN-125, XFN-151, etc.).
  • Fixed rpc.BlockNumber overflow issues across modules (XFN-69).
  • Verified header hash correctness in getEpochSwitchInfo.
  • Enforced gas limit bounds and validation logic (XFN-07, XFN-59, XFN-1619).
  • Skipped gas limit verification for genesis block.
  • Added DeepCopy() for PoolObj (XFN-04).
  • Added epoch-switch check in IsSigner (XFN-90).
  • Earlier rejection of invalid signatures (XFN-29).
  • Validated gap numbers in masternode updates (XFN-11).
  • Enforced minimum timestamp for initial V2 block (XFN-16).
  • Correct special-tx processing behavior (XFN-67).
  • Removed “fake storage” implementation (XFN-150).
  • Separated V1 and V2 full verifier arrays.

RPC & API Enhancements

  • Updated BlockNumber constants to match ethclient (ethereum#27219).
  • Fixed unsafe pointer manipulation in tracers (XFN-91).
  • Improved error propagation in internal/ethapi (XFN-118).
  • Pre-allocated map in txpool API for better performance (XFN-106).
  • Validated tx JSON non-nil before use.
  • Fixed incorrect condition judgment in RPC (XFN-73).
  • Ensured gasprice cache purge goroutine terminates properly (XFN-89).
  • Corrected parameter name mismatch in HookPenalties() (XFN-141).

Security & Bug Fixes

  • Fixed inconsistent tx blacklist enforcement (XFN-98).
  • Fixed trie DB reference dereference issues (XFN-85).
  • Resolved unsafe slice creation pointer usage.
  • Added missing nil checks and improved error handling across modules.
  • Synchronized txpool cache with mutex protection (XFN-65).
  • Resolved concurrency issues: data races, goroutine leaks, unsynchronized reads.
  • Fixed overflow, modulo-by-zero, and boundary condition bugs.
  • Improved signature, gas fee, and immutability handling logic.
  • Corrected mined block event handling and transaction queue logic.
  • Fixed incorrect tx queue pop order (XFN-37).
  • Eliminated variable shadowing in many functions.

Code Refactoring & Cleanup

  • Removed unused variables, functions, and APIs (XFN-74, XFN-134, XFN-115, etc.).
  • Improved naming consistency and parameter clarity.
  • Added Solidity documentation.
  • Eliminated unused parameters in consensus/XDPoS.
  • Converted appropriate variables to constants (XFN-123).
  • Cleaned up error definitions and improved ExtractAddressFromBytes().
  • Fixed typos and added missing comments.
  • Separated v1 and v2 verifier arrays.

Network & Node Adjustments

  • Fast-cancel block insertion when debug_setHead is invoked (XFN-142).
  • Enhanced handling of future blocks.
  • Fixed goroutine leak in procFutureBlocks (XFN-105).
  • Improved masternode update verification.
  • Enhanced QC verification logic (XFN-09).
  • Corrected Block type immutability issues (XFN-82).
  • Added validation for initial V2 timestamp.

Development & Deployment Updates

  • Version bumped to v2.6.6-testnet.
  • Compared V2 parameters across versions (XFN-45).
  • Disabled config comparison during rollback.
  • Added additional logs for debugging.
  • Updated test gas limit parameters.
  • Resolved merge conflicts.
  • Added missing packages/imports (e.g., fmt).
  • Updated package version references.

What's Changed

Full Changelog: v2.6.5-testnet...v2.6.x-testnet

Don't miss a new XDPoSChain release

NewReleases is sending notifications on new releases.