Releases: PlatONnetwork/PlatON-Go
Galileo伽利略(v1.1.2)
The Galileo (v1.1.2) release is a hotfix for an online issue #1880 that could cause verifier nodes to be slashed.
Bug-fixes
- Fix data inconsistency in concurrent cases due to the use of global random instancePlatON-issue-1880
Notes
When the seed of a random instance is contaminated by concurrency, there will be a 'BAD BLOCK' in the nodes' log. Besides, the block will not be verified, resulting in failure to receive enough votes for the proposer's block. There are 3 possible situations as follows,
-
If the first block produced by the node is not affected, but the seed has been contaminated in subsequent blocks. The node's block production rate will be affected because the final confirmed block is less than 10, the expected number.
-
According to Giskard consensus mechanism, if the first block is contaminated by concurrency, the next blocks can be proposed without confirmation. Subsequently, all blocks of the node in this round will not be confirmed, which will eventually result in 0 blocks proposed and the nodes being slashed.
-
For non-block-producing nodes, the seed may be contaminated while verifying the block, resulting in failure to pass the block verification. Hence, the overall fault tolerance of the consensus will be reduced regarding that the contaminated node can't vote.
In the above consideration, it is strongly recommended that all verifiers upgrade your node immediately.
Copernicus哥白尼(v1.1.1)
The Copernicus (v1.1.1) release is a patch release of the core development team's maintenance, which includes the implementation of the EVM compatibility proposal PIP-2 as well as fixes for some known issues.
Improvements
- EVM compatibility proposal PIP-2 solution implementation
- Synchronised update of features in Ethereum1.9.0 release
- Synchronized incorporation of ethereum vulnerability CVE-2021-39137, detailed description available here
Bug-fixes
- Fix bug that staking nodes cann't produce blocks #1836
- Fix web3js not updating bindata issue
- Fix pre-estimated gas interface error #1819
- Fix FastSyncStatus exception after abnormal termination #1775
- Fix platon_getlogs did not work
- Fix the dockerfile build failure issue #1537
- Fix the problem that listening to events with the subscription interface gives 2 identical logs #1867
- Fix the problem that platon_estimateGas returns too few messages #1819
Notes
- This release contains some features of ethereum 1.9.0, including the feature on freezer, see ethereum-19244 for details
- According to the actual tesging, the storage overhead of PlatON mainnet nodes will be partially increased after upgrading to 1.1.1 (for example, the storage space will be increased by about 8G after upgrading from 16,200,000 block high)
- Because of the freezer feature of migrating the original data, the process will migrate some of the historical data to the freezer database for a period of time after the node is upgraded, and during this process (about 1 hour or so)
a. CPU overhead will increase compared to normal operation, about 2~4 times the load in normal state, after the data migration is completed it will return to normal
b. A few nodes will experience a short increase in memory overhead after the upgrade and reboot, which will return to normal after the data migration is completed.
Please pay attention to the resource usage of the host, it is recommended to use swap partition, if possible, you can also choose to upgrade the physical memory of the machine to 16GB - The migrated data is not applicable to the old version (1.1.0), it is recommended to back up the data (data/platon directory) before upgrading
- This version does not require an on-chain governance upgrade, but it is recommended that nodes upgrade as soon as possible due to the fixing of critical vulnerabilities
v1.1.0
PlatON version 1.1.0 is a feature release that implements long-discussed optimisation features in PIP-3.
Optimizations
- Optimize transaction dissemination strategy, send transaction hash value to nodes that do not directly broadcast transactions issue-1780
- Support the feature of RPC returning chainid (refer to EIP-695)
- Open the getWaitSlashingNodeList interface for obtaining Slashing status issue-1787
- According to the community proposal, take the random election of the PlatON network blocking node. The expected value of the cumulative binomial distribution function is adjusted from 30 to 43. The candidate nodes are shuffled to increase the randomness. For details, please refer toissue-1785,Discuss
Bug fixes
- Fix the failure to restart the node when the fast synchronization is not completed issue-1775
- Fix the bug that gasPrice must be passed in for the estimation of the governance contract when the gas estimate interface is called issue-1758
- Fix the bug that the call method occasionally returns -32000 error code issue-1769
- Fix the bug of
BAD BLOCK
after the node fast synchronization fails issue-1783 - Fix the bug of the value of
platon_caller
being incorrect when WASM is called across contracts issue-1779 - Synchronously fix the bug of incorrect return value of Ethereum txpool's batch inserting transaction ETH-21683
v1.0.0
This release is the first major release of PlatON-Go and the initial live-net version of the mainnet, it marks an important milestone for PlatON network.
We have implemented all features described in the PlatON Economic Bluepaper and made some targeted optimizations based on Alaya
(including bug fixes):
- Alternative validators qty
201
, validators qty43
- Minimum staking amount
100,000
lat - Maximum number of consensus rounds tolerated for no-proposing blocks
20
- Slashing: number of locked epochs when no-proposing block
56
- Slashing: no-proposing block will be slashed lats latequivalent to
2500
block rewards - Number of locked epochs when unstaking
168
- Chain ID
100
- Fixed the bug of dockerfile mismatching #1537
- Fixed OOM issue caused by
platon_blockhash
function of wasm contract #1622 - Filled in
genesis block timestamp
andgenesis block manifesto
New Baleyworld v0.13.1
md5sum
File | md5sum |
---|---|
platon-ubuntu-amd64-0.13.1.tar.gz | dd84e40ed9762e380db1953e70da4a81 |
Change Log
- New features
- No longer mandatory to unstake when nodes ware slashed by low block productionPIP-11.
- The condition for zero block production times is changed from the default of 3 to 1PIP-11.
- Special blocks, such as election blocks, settlement blocks are packaged and traded according to normal logic#1461.
- RLP coding optimization of WASM contract#1449.
- Add the txpool.cacheSize parameter, when a certain number of transactions are received, the transaction will be moved from queue to pending#1469.
- Adjust the default gasLimit of the block to 201600000 to increase the capacity of a single block#1469.
- When the block is executed, the 'from' is first obtained from txpool, if not, calculated it in parallel#1469.
- Changes
- Synced some optimized content from go-ethereum.
- Built-in domain names of mainnet seed nodes and foundation nodes.
- Optimized the performance test plugin.
- Bug Fixes
New Baleyworld v0.13.0
md5sum
File | md5sum |
---|---|
platon-ubuntu-amd64-0.13.0.tar.gz | dd84e40ed9762e380db1953e70da4a81 |
Change Log
- New features
- Changed the format of address from 'hex+EIP55' to 'bech32', human readable part are registerd here.
- Changed the rules about modifying commission rates, please find the details here.
- The token issuance ratio has been changed from a fixed value to governable variable.
- Support the computing of state root and storage root in parallel.
- Support executing transactions in parallel with DAG.
- Changes
- Updated license statement, rename package, etc.
- Wagon:Fixed the ineffective memory restriction bug.
- Removed the node address field in the slashing API.
- Replaced the package managment tool 'go vender' with 'go mod'.
- Updated solc compiler which depends on libz3.so in Linux.
- Merged go-ethereum's optimizations about fastCache.
- Merged go-ethereum's optimizations about strange balance.
- Merged go-ethereum's optimizations about txpool.
- Updated the example address in README.md.
- Changed the testnet's chainid to 103.
- Bug Fixes
- Fixed an issue that would cause a memory leak when user call 'EstimateGas' from RPC.
- Fixed an issue where some transactions in the tx_pool have not been packaged for a long time. #1342
- Fixed an issue where consensus messages were misjudged as DDos attacking.
New Baleyworld v0.12.0
md5sum
File | md5sum |
---|---|
platon-ubuntu-amd64-0.12.0.tar.gz | d3d41cd69f6fc98e14d771eec15fa3c1 |
Change Log
- New features
- #1317 Optimized Storage.
- #1307 Validators produce blocks in a random order.
- #1328 Any node cannot be delegated immediately in the same block after it was staked.
- Removed 0.9.0 / 0.10.0 / 0.11.0 forking logic.
- Bug Fixes
#1333 Fixed an issue where governance parameters were not configured in the genesis block.
New Baleyworld v0.11.0
md5sum
File | md5sum |
---|---|
platon-ubuntu-amd64-0.11.0.tar.gz | c3e512435190573f5bf687985d9a9341 |
Change Log
- New features
- Support for compiling, deploying WASM contracts.
- Support for upgrading and destroying WASM contracts.
- Java/js SDK and platon-truffle are available for WASM contracts.
- Support permission control
- Added storage types such as Array, Map, MultiIndex
- Changes
- Adjusted slashing mercanism. PIP-3
- Delete the unused command parameters such as wallet, ethstats and gcmode
- Bug Fixes
- #1288 Fixed node cannot start after interrupted (terminated) in the middle of node 'fast' synchronization.
- #1256 Fixed memory overflow when call GetTransactionCount repeatly.
- #1187 Fixed the failed transfer issue to the built-in contract.
- #1262 Fixed view synchronization slowness issue.
- #1134 Fixed the 'vrf invalidate' bug.
- #1198 Fixed this 'BAD BLOCK' bug.
- #1290 Fixed transaction index deleted issue.
Baleyworld_v0.7.2
Change Log
- Refactored the whole PPOS and CBFT's framework.
- Temporarily remove the MPC and VC features.
- Fixed some bugs in version0.6.0.
Baleyworld_v0.6.0
md5sum
File | md5sum |
---|---|
platon-ubuntu-amd64-0.6.0.tar.gz | 18f816bbb11f2617d3f4f5c12cca82ce |
platon-ubuntu-amd64-0.6.0-with-mv.tar.gz | 2ff9594dd5b86628188ca80bba5c9c5e |
platon-windows-x86_64-0.6.0.zip | 265e9f3983c3a21fa915d10e5903fec4 |
platon-windows-x86_64-0.6.0-with-mv.zip | 9cad41ea16c614873e0936909f8ea843 |
Change Log
- Fast mode is supported for block synchronization。
- Streamlined the data storage of MPT.
- Support parameter "--betanet" to connect to Beta network when startup.
- Fixed the panic problem of consensus.
- Fixed the bug Change the cfg file cbft.json and observe the block time
- Fixed the 'CandidateWithdraw' failed bug #49
- Fixed the bug of 'Contract's balance is not enough' #50