Skip to content

Conflux v2.0.0 (Hydra)

Compare
Choose a tag to compare
@peilun-conflux peilun-conflux released this 14 Feb 09:52
· 1525 commits to master since this release

To node operators and miners:

Please upgrade your node before Epoch Number reaches 36935000 or Block Number reaches 92060600 (around 12:00 Feb.23rd, 2022(GMT+8)).

Please add pos_config (will be updated here after Feb.25th at 12:00) before Epoch Number reaches 37230000 (around Feb.28th 12:00).

If the binary cannot start, you can choose to compile the binary on your own platform or use the compatible version. Note that the compatible version has poorer performance and requires better hardware to run stably(possibly >4 cores).

The first time a v2.0 node starts, it will generate a PoS private key (stored in pos_config/key) and a password is required to encrypt it. The password is needed each time the node restarts. If the node will be registered as a PoS voter, please make sure the key file and the password are not leaked or deleted/forgotten.

Spec Incompatible Changes

RPC Improvements

Check this hardfork document for details: https://developer.confluxnetwork.org/v2-hardfork/hydra_overview/#rpc-changes

PoS RPC

Added a new group of PoS-related methods with a prefix of pos. Current information about the PoS chain can be acquired using these methods.

PoW RPC

Hardfork PoW RPC Changes

  • Added a new field in the block structure and pubsub header structure:
    • posReference: the hash of the PoS latest block at the time when the PoW block is mined
  • cfx_getStatus response have two more fields: latestFinalized and ethereumSpaceChainId

Incompatible Trace Changes

  • Refactor the design and implementation of transaction traces. trace RPCs will be affected. RPC server runnings need to resync all trace data to support trace RPCs correctly. Check Conflux-Chain/CIPs#88 for details.

New Tag

  • Added a new epochNumber tag:
    • latestFinalized:the latest finalized block

New RPCs

  • Added three new RPC methods:
    • cfx_openedMethodGroups
    • cfx_getPoSRewardByEpoch
    • cfx_posEconomics:
      • view the current overall economics information of PoS
  • txpool-related RPC
    • Added a new group of txpool-related RPC methods with a prefix of txpool which can be used to view various kinds of information regarding the current transaction pool.

eth RPC

Introduce Ethereum-comptible eth RPCs after CIP-90. Refer to this link for a list of implemented methods: https://developer.confluxnetwork.org/conflux-doc/docs/EVM-Space/evm_space_rpc_compatibility

Configuration Improvements

  • Remove default dev mode ports. The users should configure open ports if they want to access RPCs.
  • Add configuration jsonrpc_http_eth_port and jsonrpc_ws_eth_port to set eth-space RPC endpoint ports.

Transaction Pool Improvements

  • Implement transaction pool garbage collection based on strict priorities (including transaction readiness, gas price, e.t.c.).
  • Sample a subset of transactions with higher gas prices for packing. This reduces the packing time for high-price transactions.
  • Reject invalid recipient in tx pool.

Bug Fixes

  • Fixed a bug that may slow down the syncing process for archive nodes.
  • Fix an issue that if the node is serving multiple state-related RPCs concurrently, some states may fail to be opened.
  • Fix a possible OOM issue during node restarting.
  • Fix blocked catching up issues of a heavy fork subtree.