Skip to content
This repository has been archived by the owner on Aug 19, 2024. It is now read-only.

v1.9.0 Release Notes

Compare
Choose a tag to compare
@aidan-kwon aidan-kwon released this 28 Jul 10:07
· 2360 commits to dev since this release
51c0105

v1.9.0 Release Notes

Klaytn v1.9.0 contains a protocol upgrade that results in backward incompatible changes, like the Ethereum hardforks. All Baobab/Cypress nodes would thus have to be upgraded to v1.9.0 or higher before the target block number. The name of the hardfork is ‘Magma’. The hardfork contains an implementation of the dynamic gas price mechanism suggested in KIP71.

The planned hardfork schedule is as follows:
Magma hardfork blocknumber & estimated date

  • Baobab: 98347376 11:00 AM (UTC+9) Aug 8
  • Cypress: 99841497 11:00 AM (UTC+9) Aug 29

NOTE: This version updates the version of the database to support snapshot sync. You cannot downgrade to the older versions with existing data after updating to v1.9.0.

NOTE: Snapshot sync is shipped on this version, but not yet enabled as default. The state snapshot should be generated on remote peers to sync properly, but it is not yet ready. You can manually enable snapshot sync with --syncmode snap, but be advised that we expect it would find suitable peers after a few weeks. This feature is only experimental at this moment.

Protocol Upgrade(hardfork) Features

  • Implemented dynamic gas price mechanism (#1442 #1452 #1493 #1501 #1518 #1519 #1530 #1537 #1538)
  • Implemented APIs to support dynamic gas mechanism (#1520)
    • klay_upperBoundGasPrice returns the maximum value of the dynamic gas price
    • klay_lowerBoundGasPrice returns the minimum value of the dynamic gas price
  • Updated klay_gasPrice to suggest 2 * currentBlock.baseFee after Magama hardfork (#1534)
  • Updated sync of parent chain status (#1427)

New Features

Improvements

  • Invalidated the block header having a different changeSet size (#1220)
  • Added dynamic waiting time between block generation (#1340)
  • Updated callTracer and fastCallTracer to be more descriptive for SELFDESTRUCT operation (#1343)
  • Refactored BadBlock handling logic to store it in database (#1371)
  • Enhanced txpool validation logic for fee-delegation txs (#1372)
  • Introduced rlp package and update rlp-related logic (#1385)
  • Added detail revert messages at klay_call, klay_estimateGas (#1408)
  • Supported daemon execution using Docker with kpn, kcn and kbn *#1476)
  • Added constant metric for showing binary version (#1488)

Fixes

  • Fixed tracer to handle inner insta-fail (#1352)
  • Removed vote when checkVote() fails in HandleGovernanceVote (#1367)
  • Fixed multiChannelPeer ReadMsg loop to read closed ch immediately (#1389)
  • Fixed a potential buffer-over-run in transaction sorting (#1398)
  • Fixed concurrency API call bugs related to service chain (#1438)
  • Increased required consensus messages with six validators or less (#1462)
  • Filled missing Gini field to the GetStakingInfo result (#1464)
  • Fixed wrong return of api related to snapshot (#1468)
  • Fixed DoCall for free to transaction with no price fields (#1540)
  • Enhanced validations for tracer output converting logic (#1549)

Miscellaneous

Binaries

  • Linux: kcn kpn ken kscn kspn ksen kbn kgen homi
  • Darwin: kcn kpn ken kscn kspn ksen kbn kgen homi
  • Baobab-linux: kcn kpn ken
  • Baobab-darwin: kcn kpn ken