NEM Symbol 0.10.0.5 Release & Testnet Reset (Updated 19/01/2021)

NEM Symbol 0.10.0.5 Release Announcement & Testnet Reset


As communicated earlier today in the Symbol Testnet Reset & Release (14-Jan-2021) post, this is notice of a full release and Testnet reset.

A huge thankyou to all the team members that worked tirelessly to make this happen, the past 4-6 weeks have been particularly intense and required a huge commitment from everyone involved.

Release Components

The main release components are:

NEM Symbol 0.10.0.5 Release Announcement:

A short while ago the below was posted on the public Slack channel:
Slack: https://nem2.slack.com/archives/C9E7N7H1N/p1610670690013300

Hi All,
The 0.10.0.5 server build is released and a new test network has been created.
There have been several perf and stress runs done so there is over 20mil transaction on the chain.
The new api nodes endpoints are:

The faucets can be found at:

Explorer is here:

For those interested in testing out running a test network node :

Updates

  • The faucet has been emptied quite quickly and been topped up, we are placing restrictions back on it. If anyone wants to claim 3m XYM to allow setting up a voting node/supernode, please request from the @nemhelpdesk telegram channel
  • Updated Rest, Bootstrap and Wallet release details as per comment on 19/01/2021

Testnet

This release will allow Community Nodes to be connected to a new Testnet that NGL started ~1.5 weeks ago. That Testnet was brand new, and is running the code above, it has ~15m transactions in it from the various stress tests run by the Test Team prior to its release and has passed stress testing at:

  • 100tps - Mainnet target achieved, processing normal
  • 150tps - Mainnet target exceeded, processing normal
  • 400tps - Mainnet target exceeded, throttled at 130-200tps and recovered when load subsided

The new Bootstrap release will connect nodes to this network. The initial sync can take 3-5 hours due to the size of data already present on the chain.

Versions

It is important to flag that any of the old tools (CLI, Bootstrap, SDKs, Wallets etc) may not connect to this new network, or may error if they do. Similarly the new tools in this release, may not support the old Testnet running 0.10.0.4, there are breaking changes. Most community members will want the new network.

If there is a specific reason to keep using the old one, it will be kept running on NGL nodes for the foreseeable future, just be careful to use the correct version of the tools for the Testnet you want to connect to.

Mobile Wallet Workaround

There is a change in the Core Server in relation to minimum fees, this has been changed in the REST+SDK layers. As a result a new wallet build is being tested and will be released shortly, in the mean time all users should try and use the desktop wallet if possible. If not possible please increase your fees above the minimum in the short term


How to Install your Testnet Node (0.10.0.5)

It is not recommended to upgrade due to being on a new network/chain, you will need to reset the server entirely.

Install the latest bootstrap:

npm install -g symbol-bootstrap

Run the Node

  • Dual: symbol-bootstrap start -p testnet -a dual --reset
  • Peer: symbol-bootstrap start -p testnet -a peer --reset
  • API: symbol-bootstrap start -p testnet -a api --reset

When creating a new testnet node, --reset will clear up all your data and keys. The keys will be regenerated if you are not providing them with a custom preset. Use ‘symbol-bootstrap link’ to finish your node’s accounts registration (check the docs if this is unclear)

It’s worth double-checking that your docker services are running. Validate the services logs and check that your node’s keys and accounts are valid.

For new nodes, you can also follow: Running a Symbol Testnet Node

Backup Sync

A feature is being added to Symbol Bootstrap to allow you to short cut the process and start from a trusted backup of the blocks to make it faster to provision a Testnet node, this section will be updated in the coming days when the work is complete. For the time being, a sync from scratch is the only option.

Progress can be followed on Pull Request Here


Symbol 0.10.0.5 Release Notes

Core Server

Github: https://github.com/nemtech/catapult-server/releases/tag/v0.10.0.5

[0.10.0.5] - 14-Jan-2020

Fixed

  • deep rollback
    • insert gaps into AccountState stacks to fix deep rollback bug, #121
    • prune newer account histories during rollback, #120
    • write importance files to importance/wip and add commit step, #119
  • importance block processing
    • guarantee HighValueAccountCommitObserver is executed AFTER all other state-changing observers, #118
    • fix calculation of VotingEligibleAccountsCount to only include currently eligible accounts
    • fix potential deadlock when harvesting importance block, #137
  • fix infinite loop in CompareChains when remote returns less than configured hashes, #126

Changed

  • update boost to version 75
  • pull finalization proofs more aggressively when unfinalizedBlocksDuration is 0
  • UT and PT handling
    • add MinDeadline filter to PT and UT requests
    • only propagate valid PTs and UTs
    • punish stateful transaction failures
    • add configuration to ban nodes that send a lot of bad transactions
  • memory enhancements
    • change PT and UT limits from count to size
    • add memory limits on dispatcher queues
    • (mongo) cap size of transactionStatuses collection, #135

REST

Github: https://github.com/nemtech/catapult-rest/releases/tag/v2.3.1
Slack: https://nem2.slack.com/archives/C9E7N7H1N/p1610671188016700

[v2.3.1] - 19-Jan-2021

Fixed

  • Fixed aggregate transaction codec issue.

**We are fixing the multisig cosignature nofitifcation issue which will be included in the next release.

[v2.3.0] - 14-Jan-2021

Added

  • minFeeMultiplier from the current connected Node in transaction fees endpoint
  • Added new nodePropertyFilePath in rest.json.

Updated

  • Moved config-network.properties path config from network to apiNode.
  • Updated PrivateTest network type from 0x80 to 0xA8.
  • Re tracked to catapult-server main branches.

SDK - TypeScript/JavaScript

Github: https://github.com/nemtech/symbol-sdk-typescript-javascript/releases/tag/v0.23.0
Slack: https://nem2.slack.com/archives/C9E7N7H1N/p1610671090015600

[0.23.0] - 14-Jan-2021

Milestone: Catapult-server main(0.10.0.5)

Package Version Link
SDK Core v0.23.0 symbol-sdk
Catbuffer v0.1.1 catbuffer-typescript
Client Library v0.11.1 symbol-openapi-typescript-fetch-client
  • Re track to catapult-server main branch
  • All entity versions reset to v1 for Symbol mainnet release
  • [BREAKING CHANGE] Finalization proof modle removed messageGroup.schemaVersion and BMTreeSignaure.top
  • [BREAKING CHANGE] Removed VotingKeyLinkV1Transaction.
  • [BREAKING CHANGE] PrivateTest network type changed from 0x80 to 0xA8.
  • Added Node specific property: minFeeMultipler in transactionFees.
  • Removed padding buffer in account state serialization.
  • Voting key length set to 32 bytes.

SDK - Java

Github: https://github.com/nemtech/symbol-sdk-java/releases/tag/v0.23.0
Slack: https://nem2.slack.com/archives/C9E7N7H1N/p1610671392017400

[0.23.0] - 14-Jan-2021

Milestone: Catapult-server finality (0.10.0.4)

  • Re track to catapult-server main branch
  • All entity versions reset to v1 for Symbol mainnet release
  • [BREAKING CHANGE] Finalization proof middle removed messageGroup.schemaVersion and BMTreeSignaure.top
  • [BREAKING CHANGE] Removed VotingKeyLinkV1Transaction.
  • [BREAKING CHANGE] PrivateTest network type changed from 0x80 to 0xA8.
  • Added minFeeMultiplier in transaction fee endpoint.

Symbol Bootstrap

Github: https://github.com/nemtech/symbol-bootstrap/releases/tag/v0.4.1
Slack: https://nem2.slack.com/archives/C9E7N7H1N/p1610671617019700

[0.4.1] - Jan-19-2020

Milestone: Hippopotamus(0.10.0.5)

Package Version Link
Symbol Bootstrap v0.4.1 symbol-bootstrap
  • Improved --password. It’s only required when private keys need to be read.
  • Added database service to server and broker depends_on compose services.
  • Fixed link --unlink command for Voting Key Link transactions.
  • Added multisig account validation to link and supernode commands.
  • Added CONTROLLER_PUBLIC_KEY to Supernode’s agent configuration
  • Upgraded Symbol Rest to version 2.3.1.

[0.4.0] - Jan-14-2020

Milestone: Hippopotamus(0.10.0.5)

Package Version Link
Symbol Bootstrap v0.4.0 symbol-bootstrap
  • Re track to catapult-server main branch
  • Compose file version default to 2.4.
  • Fixed mongo memory usage by adding --wiredTigerCacheSizeGB limit.
  • Allowing users to exclude custom preset data from a compose service.
  • Basic implementation of supernode program monitoring agent. Supernode Agent installation and supernode enrol command, disabled at present, awaiting full programme implementation, preparatory step.
  • Private key in generated addresses.yml and preset.yml can be encrypted and protected by using --password.
  • Masking 64 hex keys HIDDEN_KEY on log lines.
  • Removed unused Server configuration files in the Rest container. This reduces the risk of exposing config files if the Rest machine gets compromised.

Open API

Github: https://github.com/nemtech/symbol-openapi/releases/tag/v0.11.1

[0.11.1] - 14-Jan-2021

Targets catapult-rest 2.3.0

Added

  • minFeeMultiplier in transaction fees endpoints from the current connected Node.

Updated

  • Re tracked catpult main branch.
  • Updated PrivateTest network type from 0x80 to 0xA8…

Symbol Desktop Wallet

Github: https://github.com/nemgrouplimited/symbol-desktop-wallet/releases/tag/v0.13.8

[0.13.8][v0.13.8] - 15-Jan-2020

Milestone: catapult-server@v0.10.0.5

This version only works with latest testnet (0.10.0.5), it is not backward compatible.

Fixed

  • Fixed electron-shortcut dependency issue.
  • Updated reserved testnet node url (0.10.0.5)
  • Reset local storage for new network 0.10.0.5

[0.13.7][v0.13.7] - 14-Jan-2020

Milestone: catapult-server@v0.10.0.5

Added

  • Add URL validation procedure to the web-contents-created callback to avoid remote code execution attacks.
  • Added pop-up when co-signatory address is not valid on multisig page.
  • Added icon for NODE_KEY_LINK transactions.
  • added minFeeMultiplier to support the new catapult-server minimal fee requirement.

Fixed

  • Improve Japanese translation.
  • Fixed validation for duplicates in contact creation.
  • Removed additional space in Select Contact window
  • Fixed visibility for balance in profile import form.
  • Updated Electron.
  • Updated feeds to use HTTPS to avoid potential content spoofing.
  • Fixed import account stalls at Mnemonic Passphrase stage.
  • Fixed validation in the contact form.
  • Removed Foundation tags.
  • Fixed transaction filter is not closed after clicking outside the dropdown.
  • Fixed UI issue in Account Restrictions.
    • Button New Address Restriction is out of the window.
    • Button Cancel is out of the window.
    • Address/ Mosaic deletion window doesn’t disappear when the restriction was removed.
    • Multisig account is not fully visible on the address restriction page.
  • Fixed not all the Aggregate page is inactive under Multisig account.
  • Fixed carriage in “To” field for Simple transaction under Multisig account via Aggregate.
  • Fixed single character namespace creation is disabled.
  • Fixed note not visible with normal window size in all transaction forms.
  • Fixed import Transaction URI" dialog window has the wrong size.
  • Fixed unable to convert the account to multi-signature
  • Fixed inability of converting the account to multisig
  • Fixed mnemonic for password backup is always displayed as invalid.
  • Fixed “Add a cosignatory” button missing on Multisig page after toggling from co-signer to not co-signer via upper menu.
  • Fixed setting form URL update state.
  • Fixed mnemonic issues.
  • Fixed UI bugs.

Catbuffer-generators

Github: https://github.com/nemtech/catbuffer-generators/releases/tag/v0.1.0

Symbol Explorer

Github: https://github.com/nemgrouplimited/symbol-explorer/releases/tag/v0.7.1

Symbol Faucet

Github: https://github.com/nemgrouplimited/symbol-faucet/releases/tag/v0.4.1

Symbol CLI

Has been released on github but is still being testing internally
Github: https://github.com/nemtech/symbol-cli/releases/tag/v0.23.0

13 Likes

All, just to confirm there are some issues with the Wallet build in this release, the team are working to resolve them at present, it is related to the build/merge process not picking up:

  • New testnet URLs
  • A missing dependency

I expect to update with a new wallet today

I also want to re-iterate that if you wish to keep using the old Testnet and an old Wallet version - you must backup your profile, the new Wallet will only work on the new Testnet due to some breaking changes. It is very likely it will clear your old settings as well and if you want to downgrade you will need to import the profile

4 Likes

The wallet installation issues above have been resolved and a build of the Desktop Wallet is now complete.

However, some issues are being experienced in testing related to aggregate transactions on the new network, these were not occurring in previous testing. They impact the wallet experience and have been reported by a member of community in use not related to the wallet.

The wallet release is going to take more time until the above is looked at, because we want to ensure the next release of the wallet enables community testing correctly and at present that is not possible. We will update further when more information is known.

We have removed the old wallet release to avoid confusion

UPDATE (18/01/2021)

Wallet & Aggregate Transactions

The issue above has been resolved and was in REST, it has been undergoing testing over the weekend which is being reviewed today. It will be a minor patch and once tested will be released with the Wallet

Finality

Over the weekend, Finality stopped for a while and then restarted, this is not an issue with Finality. The nature of the network is such that NGL nodes still make up the majority of voting ones while community nodes come online. A planned patch was being applied across all 500 nodes and while the voting nodes had that applied, finality stalled, when they came back online it caught up.

As community nodes make up more of the voting nodes this should reduce in likelihood of occurrence and where possible we are trying to upgrade in batches so we don’t knock them all out at once, didn’t quite work on this round so we will revisit the patch process to try and avoid any temporary disruptions

9 Likes

Update (19/01/2021) - REST and Wallet fixes now released

We have just released the REST v2.3.1 and Symbol Desktop Wallet 0.13.8 and Symbol Bootstrap 0.4.1 releases to resolve the issues noted above, they have passed testing successfully and the core NGL nodes have been updated with the latest REST version. In the short term, if you use the nodes in the original announcement the wallet should work normally.

We are rolling the patch out across the rest of our ~500 nodes at present and it will take a few hours. We have altered the upgrade process to be a bit slower and added delays between groups of nodes, this should keep any impact on finality to a minimum and hopefully will be unnoticeable.

I will update the main post with release notes shortly.

We are aware of one known issue on REST that the team will pick up in the next patch, this may affect notifications in the wallet for any multi sig account modifications with more than 2 cosigners, it is showing itself in the validation testing for this patch so will be dealt with shortly: https://github.com/nemtech/catapult-rest/issues/278

We are also working on getting the wallet build signed for Windows, it may present a smartscreen error in the mean time, it has been signed for Mac so those popups should now be resolved

Update: There appears to have been an inconsistent issue for some people trying to install the wallet, it hasn’t affected all operating systems, or even been consistent across operating systems. It appears to be something with the upload/download to Github, they were all tested before release, we have uploaded a new version and retested it on all platforms and it seems to be ok, if the problem continues please do let us know. For Chrome + Windows users, there is a specific difference between 0.13.6 and 0.13.8 that Chrome flags as a “dangerous download” you will need to press the keep button instead discard on the warning or the download won’t complete, the app will install though. We will keep working through this inconvenience in the backround

13 Likes