github multiversx/mx-chain-go v1.0.137

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

Release v1.0.137 is out 🚀

What's new:

  • #2024 Refactored the way DestinationShardAsObserver works inside epochBootstrapper so if a shard is set it will "force" the node to start in the specified shard.
  • #1823 Standardized the API responses. Each response now has 3 fields: Data (which will contain the desired result if the request was successful), Error (which will contain the error message or nothing otherwise), Code (which will be both human and machine-readable string and will tell the code of the response - example: bad_request)
  • #2040 Added chainID and version identifiers in transaction structure in order to prevent replay attacks between testnets and mainnet.
  • #2069 Implemented a function so we can get all hashes from a certain trie. When an account is removed, mark all the data trie hashes for eviction.
  • #2072 Enabled the profile debug endpoint /debug/pprof/allocs. go.mod cleanup and enabled -profile-mode in local testnet scripts.
  • #2075 Health service: increased memory monitoring interval from 1 second to 5 seconds, increased "alarm" threshold from 2 GB to 2.25 GB.
  • #2079 Remove unused code from state package and change some log levels.
  • #2082 Implemented custom endpoints throttlers in order to be able to limit the maximum number of simultaneous requests (or goroutines) at once. Removed old implementation for the /transaction/:hash endpoint throttler and switched to this approach.
  • #2081 Add a new trie functionality, getAllLeavesOnChannel, which returns all the trie leaves on a channel. When all the leaves have been sent, the channel closes.
  • #2084 Renamed boolean parameter FullArchive to CleanOldEpochsData.
  • #2090 Implemented the new economics requirements. Modified the chain economics parameters.
  • #2091 Changed the maximum number of items in the storers cachers.

Bug fixes:

  • #2067 Added a length check after the data unmarshal in ESDT built in function.
  • #2068 Replaced TrimLeft call with TrimPrefix in consensus delayed broadcast mechanism.
  • #2070 Dockerfile: removed hardcoded arwen version, moved arwen wasm to lib folder in second build stage.
  • #2071 Dockerfile: fixed the missing arwen build step, added arwen to the final image.
  • #2074 Changed the Elrond logo img reference to raw as Dockerhub can't render it otherwise.
  • #2078 Fixed an OOM condition in our concurrent map that was caused by not removing old data of an already present key in the cache.
  • #2088 Fixed the bug that prevented the node restart without a DB if the destination shard ID was set to disabled.
  • #2076 Removed go-routines creation when calling the on-added handlers.
  • #2086 Fixed golangci-lint issues related to miss-aligned structs, untreated errors, warnings and weak warnings.
  • #2085 Removed all GET requests from elasticsearch observers to elasticsearch database. All observers will index data without checking if data for transaction and miniblocks is already in the database.
  • #2095 Fixed economics computation where the previous total supply was taken in consideration for the total to distribute, instead of the genesis total supply.
  • #2093 Added GET requests from elasticsearch observers to elasticsearch database only for miniblocks.
  • #2096 Rejected whitelisting miniblocks included in headers which are out of range (this will fix the situation when a node is syncing and it will receive headers with higher nonces compared with the last one processed). Because of these headers which are received, it will whitelist its miniblocks and afterwards its transactions. More than this it will also add these transactions into immunized cache. This will fill up these caches (whitelist cache, immunized cache) with a lot of information which is not needed right now and which will also be evicted until its time will come).
  • #2097 Check if node exists in genesis config before setting destination shard: fixed the situation where if an entire testnet started with the same prefs.toml file and it's value of DestinationShardAsObserver would have not been set to disabled then all the nodes joined as observers in that shard.
  • #2092 Merged all 3 middlewares in a single one as to avoid calling c.Next() on the gin context multiple times.
  • #2100 Previously, the node used to generate log files of the form elrond-go-YYYY-DD-MM-HH-MM-SS.log (note the order year-day-month). This PR fixes the order in the date format, changing it to the more readable YYYY-MM-DD (year-month-date).

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.