codablock
Active member
Release candidate v0.14.0.0-rc5 is ready for testnet!
Github release candidate: https://github.com/dashpay/dash/releases/tag/v0.14.0.0-rc5
Release notes are not ready yet and will be prepared in the next few days. Post will be updated.
Gitian sigs can be found here: https://github.com/dashpay/gitian.sigs
Before testing:
Make sure you made a backup of your mainnet datadir somewhere or at least a backup of wallet.dat/dash.conf;
Or use the -datadir and -conf parameters to use completely different directories.
This release deploys LLMQ DKGs, LLMQ based ChainLocks and LLMQ based InstantSend. A detailed product brief is currently in the works and will be published in the next days. LLMQ based InstantSend is experimental at the moment and it's not fully clear yet if we'll enable it on mainnet or not. Another large improvement is the removal of ALL legacy code related to the old masternode system.
When we see enough MNs being upgraded, we'll enable spork17 again (disabled for now, due to the old dummy DKG causing banning of v13 nodes) so that DKGs start to work. We should see the first real LLMQs build shortly after that. As we had the dummy DKGs running on testnet for a while, v14 nodes will believe that there are already plenty of working LLMQs on-chain, while in reality these are all not functional. It will take about 24 succesful DKGs until we have all active LLMQs replaced with real/functional ones.
When enough LLMQs have been created, we'll enable spork19, which will activate ChainLocks in passive/testing mode. We should see ChainLocks forming then, but not being enforced. Only after we cause BIP9 (bit4) activation for DIP8/ChainLocks, ChainLocks will start to get enforced. At this point, we can start to test 51% protection (everyone is free to try to reorg the chain).
At the same time (or a bit later), we'll activate spork20, which switches InstantSend to use the new/experimental LLMQ-based InstantSend. We can then test if things like retroactive signing, chained locks, ... are working. We will post more instructions/descriptions at that time if necessary.
We expect this upgrade to be quite seamless compared to the v13 release, as there are not so many on-chain consensus related changes involved. Also, we expect that integration partners shouldn't even notice the upgrade happening this time. It should be as simple as replacing binaries and restarting dashd. Only if the new features are needed, partners would have to look into new RPC fields from get(raw)transaction and getblock.
Additionally, the usual testing should be performed to make sure everything works as expected:
- Check if normal transactions are still working, perform some automated load testing if you want
- Check if creating and voting on proposals work. Also check if winning proposals get paid and other don't.
- Test if PrivateSend is working. Make sure to use the recently added multi session support.
- Check if InstantSend is still working. We'll start with the old system and later switch to the LLMQ based InstantSend system, both need to be tested
- Run a masternode or two, make sure it is paid. Please note that DIP3 is fully active on testnet, which means that the legacy masternode system is not present anymore. This means that you should NOT try to setup a classical/legacy masternode (no masternode.conf, no "masternode start", ...) but instead directly start with a DIP3 masternode by registering it via protx RPC commands (or use DashMasternodeTool). Instructions can be found here: https://docs.dash.org/DIP3-masternode-upgrade (Ignore that these guides assume that you're upgrading from a legacy MN!)
What else you can do:
- Report serious issues (crashes/hangs/GUI glitches) : https://github.com/dashpay/dash/issues/new
Testnet tools (explorers, faucets, pools): https://www.dash.org/forum/threads/testnet-tools-resources.1768/
For now, only the faucet at https://test.faucet.dashninja.pl/ is known to be well funded. It should have enough for everyone.
Edit: + http://faucet.test.dash.crowdnode.io/
MNOs:
Wiki: https://docs.dash.org/en/stable/developers/testnet.html#masternodes
DIP3 upgrade instructions: https://docs.dash.org/DIP3-masternode-upgrade
Sentinel : https://github.com/dashpay/sentinel/tree/develop
NOTE: Make sure you pulled Sentinel from `develop` branch and changed network to `testnet` in `sentinel.conf`. If you already have a mainnet masternode on the same server, do NOT run testnet masternode in the same datadir as your mainnet masternode (i.e. `.dashcore`). Create new folder specifically for testing (e.g. `.dashcore_test`) and make sure you use `-datadir=<yourtestnetdatadirhere>` cmd-line parameter for dashd and dash-cli. You'll also need a separate crontab line for testnet Sentinel. If you are not 100% sure what you are doing, I'd recommend setting up a new machine/instance for testing purposes only instead of reusing your mainnet server.
Github release candidate: https://github.com/dashpay/dash/releases/tag/v0.14.0.0-rc5
Release notes are not ready yet and will be prepared in the next few days. Post will be updated.
Gitian sigs can be found here: https://github.com/dashpay/gitian.sigs
Before testing:
Make sure you made a backup of your mainnet datadir somewhere or at least a backup of wallet.dat/dash.conf;
Or use the -datadir and -conf parameters to use completely different directories.
This release deploys LLMQ DKGs, LLMQ based ChainLocks and LLMQ based InstantSend. A detailed product brief is currently in the works and will be published in the next days. LLMQ based InstantSend is experimental at the moment and it's not fully clear yet if we'll enable it on mainnet or not. Another large improvement is the removal of ALL legacy code related to the old masternode system.
When we see enough MNs being upgraded, we'll enable spork17 again (disabled for now, due to the old dummy DKG causing banning of v13 nodes) so that DKGs start to work. We should see the first real LLMQs build shortly after that. As we had the dummy DKGs running on testnet for a while, v14 nodes will believe that there are already plenty of working LLMQs on-chain, while in reality these are all not functional. It will take about 24 succesful DKGs until we have all active LLMQs replaced with real/functional ones.
When enough LLMQs have been created, we'll enable spork19, which will activate ChainLocks in passive/testing mode. We should see ChainLocks forming then, but not being enforced. Only after we cause BIP9 (bit4) activation for DIP8/ChainLocks, ChainLocks will start to get enforced. At this point, we can start to test 51% protection (everyone is free to try to reorg the chain).
At the same time (or a bit later), we'll activate spork20, which switches InstantSend to use the new/experimental LLMQ-based InstantSend. We can then test if things like retroactive signing, chained locks, ... are working. We will post more instructions/descriptions at that time if necessary.
We expect this upgrade to be quite seamless compared to the v13 release, as there are not so many on-chain consensus related changes involved. Also, we expect that integration partners shouldn't even notice the upgrade happening this time. It should be as simple as replacing binaries and restarting dashd. Only if the new features are needed, partners would have to look into new RPC fields from get(raw)transaction and getblock.
Additionally, the usual testing should be performed to make sure everything works as expected:
- Check if normal transactions are still working, perform some automated load testing if you want
- Check if creating and voting on proposals work. Also check if winning proposals get paid and other don't.
- Test if PrivateSend is working. Make sure to use the recently added multi session support.
- Check if InstantSend is still working. We'll start with the old system and later switch to the LLMQ based InstantSend system, both need to be tested
- Run a masternode or two, make sure it is paid. Please note that DIP3 is fully active on testnet, which means that the legacy masternode system is not present anymore. This means that you should NOT try to setup a classical/legacy masternode (no masternode.conf, no "masternode start", ...) but instead directly start with a DIP3 masternode by registering it via protx RPC commands (or use DashMasternodeTool). Instructions can be found here: https://docs.dash.org/DIP3-masternode-upgrade (Ignore that these guides assume that you're upgrading from a legacy MN!)
What else you can do:
- Report serious issues (crashes/hangs/GUI glitches) : https://github.com/dashpay/dash/issues/new
Testnet tools (explorers, faucets, pools): https://www.dash.org/forum/threads/testnet-tools-resources.1768/
For now, only the faucet at https://test.faucet.dashninja.pl/ is known to be well funded. It should have enough for everyone.
Edit: + http://faucet.test.dash.crowdnode.io/
MNOs:
Wiki: https://docs.dash.org/en/stable/developers/testnet.html#masternodes
DIP3 upgrade instructions: https://docs.dash.org/DIP3-masternode-upgrade
Sentinel : https://github.com/dashpay/sentinel/tree/develop
NOTE: Make sure you pulled Sentinel from `develop` branch and changed network to `testnet` in `sentinel.conf`. If you already have a mainnet masternode on the same server, do NOT run testnet masternode in the same datadir as your mainnet masternode (i.e. `.dashcore`). Create new folder specifically for testing (e.g. `.dashcore_test`) and make sure you use `-datadir=<yourtestnetdatadirhere>` cmd-line parameter for dashd and dash-cli. You'll also need a separate crontab line for testnet Sentinel. If you are not 100% sure what you are doing, I'd recommend setting up a new machine/instance for testing purposes only instead of reusing your mainnet server.
Last edited: