github multiversx/mx-chain-go v1.0.134

latest releases: v1.7.10, v1.7.9, v1.7.8...
3 years ago

Release v1.0.134 is out 🚀

What's new:

  • #1885 Added implementation for meta transaction standard
  • #1968 Added verification and check that only the validator can unJail his own nodes.
  • #1971 Main closing wait will be done only if the components could not be gracefully closed.
  • #1970 Verification of txValue and length of usernames will prevent sending of large transactions with less gas limit than expected.
  • #1978 Added a p2p debbugger component that will display bandwidth used by a node split by topic usage. To enable it, run the node with *:INFO,debug/p2p:TRACE
  • #1975 Added an error message when there are to many requests to an observer. Added a return error code 429 [TooManyRequests].
  • #1871 Added mechanism that will make sure the consensus produced elements will be broadcast to other peers/shards: in case leader fails to broadcast the cross shard miniblocks and transactions then participants in consensus will schedule their slots for doing the broadcast instead of consensus leader in the order they were assigned in consensus. The broadcast slots are canceled when the cross shard data is observed on the cross shard topics.
  • #1958 Added HealthService to continuously monitor: RAM usage, diagnosable components such as transaction pools. Added naming for cachers and a memory footprint estimator for caches. Improved code coverage in some packages. Removed some duplicate stubs and moks.
  • #1979 Added a consensus rating mechanism to handle the situation when some peers would flood the consensus topic with invalid messages.
  • #1984 Added peer id in consensus message as to not allow impersonating. Anyone caught sending a consensus message that won't contain its originator peer id will be subject to peer banning.
  • #1981 Deployment and computation of Smart Contract addresses for the DNS contracts at genesis time.
  • #1995 Added meta transaction standard integration test.
  • #2006 Added denomination factor in network config route.
  • #1996 Added machine ID in version string.
  • #1992 Added a peer denial evaluator able to track black listed public keys beside peer IDs. This will make the node able to blacklist connected peers by their advertised public key.
  • #2013 Implemented withelist for cross mini blocks from shards to meta, activated immunized tranzaction mechanism for cross transsactions from shards to meta.
  • #2009 Implemented a watchdog component: if the chronology component is stuck, log the goroutines stack dump, and then gracefully close the node.
  • #2021 Implemented a mechanism which will add only whitelisted miniblocks received in pool.
  • #1998 When SC code is saved to the trie, the number of references to the same code is saved in the same db. If the number of references to a certain code reaches 0, the trie node that contains the code is marked for eviction, and it will be pruned from the db.
  • #2008 Added peer honesty implementation able to black list a public key if it insists to send bad messages. This is done currently only on consensus topic, other topics will follow. Consensus topic do not counts messages in antiflood instance as it does not require to do so due to the improved filtering mechanism and peer honesty tracking process.
  • #2025 Changed the syntax for saving sorted transactions in elastic search database caused by the migration from v6.x to v7.x.
  • #2007 Implemented an antiflood mechanism that will prevent the propagation of messages originating from observers on the majority of topics.
  • #2018 Do not reserve cross tx cache capacity for [metachain] -> [me] anymore (not actually needed). Add hospitality indicator for ImmunityCache to Warn() when a lot of items cannot be added because eviction fails (when all items already immune).
  • #2023 Added timestamp on each and every p2p message. Added extra protection for all peers to follow the message protocol.
  • #2031 Implemented whitelist mechanism for cross shard transactions where the destination is the current node.

Bug fixes:

  • #1971 Close Arwen processes after the genesis blocks are created.
  • #1980 Changed the message displayed when a key is not available in termui. Switched from [key not found] to N/A.
  • #1979 Fixed an uncovered situation in which a blacklist should be applied for both, originator and the connected peer, if an invalid message would be received on consensus topic.
  • #1867 Fixed the shard ID computation when starting the node with the option start-in-epoch deactivated.
  • #1988 Fixed state pruning before the finalized block: prune state only behind final header that is also committed by self.
  • #1997 Fixed a bug in the elrond-go node related to searching in our indexer.
  • #1969 Removed API route /transaction/:hash/status because a single observer cannot provided a correct status of a transaction (the case when a transaction is cross shard). Modified API route /transaction/:hash to return also transaction status from view of a obsever (is not 100% correct because an observer from shard 0 cannot know what is the status of a transaction from shard 1). Processing of a correct status of a transaction will be done on proxy application.
  • #2011 Fixed a wrongly used mutex in p2p network messenger, UnjoinAllTopics function.
  • #1999 Fixed block size throttle: Optimized mutex Lock/Unlock in txsPoolsCleaner component, tweaked some parameters in createAndProcessCrossMiniBlocksDstMe (how many shard/meta headers could be included in one block), reduced number of go routines from 2000 to 100 in interceptors.
  • #2010 removed handleAppClose and newStartInEpoch functions from main.go as they were not working as expected. When running a node using elrond-go-scripts-v2 it caused additional log files due to multiple processes creation.
  • #2016 Fixed the edge case when reshuffling in early epoch 1, the node currently thinks it should start in epoch 0.
  • #2020 Fixed tests and made mocks follow new vmcommon interface. Removed references to IELE for now.
  • #2021 Fixed an edge case in multidata interceptor related to a throttle mechanism.
  • #2005 Added unit tests for governance system smart contract. Implemented some fixes in the contract.
  • #2030 Fixed a bug in smartContractProcessor for built-in functions: built-in functions have to create cross shard Smart Contracts results if destination is not in shard.
  • #2026 Fixed the checking of whitelisting intercepted data that will include the checking of nonce or epoch start in the case of shard/meta headers. This will prevent dropping the messages from observers because they were not whitelisted.
  • #2027 Fixed deadlock when setting alarms for delayed broadcast data.

Note: This release should start with a new DB

Don't miss a new mx-chain-go release

NewReleases is sending notifications on new releases.