github multiversx/mx-chain-go v1.0.120

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

Release v1.0.120 is out 🚀

What's new:

  • #1767 (on top of #1716) A sender can have no more than k transactions in the pool. The transactions can not exceed s bytes in total. These limits are checked and enforced at transaction insertion (addition) time.
  • #1796 Removed the /node/epoch endopoint, moved the metrics to the /network/status/{shard} endpoint.
  • #1800 Implemented a whitelisted cross mini blocks tracker mechanism which would whitelist cross transactions.
  • #1811 Updated libp2p libraries in order to use the newest pubsub implementation that follows the gossip v1.1 protocol.
  • #1802 TxPool refactor: score computation logic extracted to allow for easier change / algorithm replacements,
    bucketSortedMap does not call computeScore anymore, but receives the score instead, removed deprecated cache implementation.
  • #1801 Antiflood refactor: removed the global network quota, added a new "slow reacting" flood preventer, added new "reserved percentage" when receiving data, added a long test to model and benchmark a fully workable antiflood component, tweaked the parameters
  • #1795 Added a new field in smart contract result structure used to store more information if a smart contract call is not executed successfully.
  • #1815 Moved the pubKeyConverter instances inside core package.
  • #1807 Removed miniblocks requests in advance, added extra delay for broadcast between header and mini blocks + transactions.
  • #1746 Activate hardfork trigger that will call the export mechanism and then halt the node.
  • #1787 Made TPS benchmarks (note: relevant data only available for metachain nodes) persistent, made TPS benchmarks work even when elastic search is disabled.
  • #1799 Moved query from peerAccountsTrie from heartbeat to validatorStatistics, added cacheRefreshInterval for the validatorsProvider cache in config.

Bug fixes:

  • #1798 Fixed validator statistics is empty by querying the trie with the previous block's rootHash (lastMetaBlock) not two blocks (prevHeader) behind.
  • #1767 Fixes in tx pool cache: undo insertion order (first in map by hashes, then in map by senders), added double-checked locking when creating a txListForSender, use bytes.Equal(hash of a, hash of b) to compare transactions.
  • #1804 Fixed a bug that wrongfully marked for eviction a node when reduceNode() was called for a branch node, the cache for oldHashes and newHashes are now reset every time after a call to Commit() occurs.
  • #1806 Added one second delay before propagating the cross shard data to avoid missing the whitelisting.
  • #1803 Added unit test that proves the staking and delegation can be done from the same address.
  • #1808 Execute log.Trace() only if loglevel is LogTrace.
  • #1809 Removed logger file closing when the startNode function finished in order to capture the last error in the file. Logger file will close when the GC will try to clean-up the logger objects through a setFinalizer function.
  • #1813 Removed the initial broadcast of the cross shard transactions if the transaction were supposed to be broadcast by the node that was on the same shard as the senders.
  • #1812 Added supplemental check when processing BLS keys inside system smart contracts and in genesis processing. The checking is done against the key generator instances that can prove the provided byte arrays represent valid public keys or not.
  • #1787 Fixed a bug when fetching metrics from storage. The old implementation was based on JSON's property of treating all numbers from an interface{} as float64.
  • #1810 When recreating the main trie, journal entries should also be reset, when RevertToSnapshot(0) is called, recreate the main trie instead of reverting all journal entries.
  • #1821 Minor fixes in internal tests scripts: the scripts will generate settings for proxy application to connect to observers that are on metachain.

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.