NavCoin Core 4.7.2 - Community Fund Stability Patches
This patch fixes various issues which were investigated and identified as part of the community fund stability review undertaken by the NavCoin Core developers. It considered a mandatory update due to the included stability patches and will require a reindex or full resynchronisation of the blockchain to take effect. Please read the full release notes for further instruction.
Fix for Verify Chain
This patch fixes Issue 630 and introduces several important changes.
- New RPC command
getcfunddbstatehashcovered by functional test
- New state for payment requests
6when those are paid.
- The payment request parameter paidOnBlock is substituted by
stateChangedOnBlockwhen state is
- New structure for storing the state history of CFundDB entries. Those are stored in a map associating blockhash and state, allowing to directly revert state transitions when reorganizations are seen.
verifychainnow checks for the consistency of the CFundDB state hash when level 4 is specified.
This set of changes will require older clients to reindex on launch, keeping the node offline for some hours at best. In order to reduce downtime, node operators can proceed as follows if needed:
- Close node with old version.
mkdir /tmp/reindexdata; cp -rf <data_folder>/blocks /tmp/reindexdata/; cp -rf <data_folder>/chainstate /tmp/reindexdata/
- Reopen node with old version. It will be again online
- Launch in parallel a second instance of the node, this time using the new version with the parameters
- Once the reindex finishes, close both nodes and copy back the reindexed data.
rm -rf <data_folder>/blocks <data_folder>/chainstate; cp -rf /tmp/reindexdata/* <data_folder>
- Relaunch new version of the node.
CFundDB extra log and ensure read before modify
This PR adds extra log for all the modifications of the CFundDB and ensures entries are read in the memory cache before being modified.
This pull request starts a new NavCoin testnet. If you’re running a testnet node you will need to will need to wipe your testnet data directory and connect to the new testnet nodes. A list of some of the testnet nodes operated by NavCoin Core developers can be found on Issue 626. If you need testnet coins or want to be added to the list of nodes, please comment on the issue or join the #dev-testnet channel in Discord.
Full list of Merged PRs
Pull Request 652
Commit 0cde809Remove new version popup
Pull Request 651
Commit 95b524eUpdate translations
Pull Request 648
Commit 09f0531Update QT strings
Pull Request 647
Commit 0eafc3bReactivate CFund
Pull Request 641
Commit 494d4e2Add extra stats to getblock
Pull Request 634
Commit 049978eFix for verifychain
Pull Request 644
Commit 5d59483Adds proposalHash to the RPC getpaymentrequest
Pull Request 643
Commit d501c89CPaymentRequest fields incorrect in diff
Pull Request 638
Commit 8131b42Fixed freezing GUI on reindex
Pull Request 632
Commit 2ad3391Fix reference to chain tip
Pull Request 629
Commit 2a6c64fSeed nodes
Pull Request 637
Commit ad883cdSet DEFAULT_SCRIPTCHECK_THREADS to auto
Pull Request 624
Commit 7058550Updates to make the wallet.py and stakeimmaturebalance.py test more reliable
Pull Request 636
Commit e6f3c23Only count stakes in main chain
Pull Request 633
Commit bfe9071Add second dns seeder
Pull Request 622
Commit 37fa72eCFundDB extra log and ensure read before modify
Pull Request 628
Commit b8ed018Restart testnet
Pull Request 623
Commit 09ea936Disable CFund client functionality
Pull Request 609
Commit 1e73c05Added clearer error messages for the nRequest amount validation
For the full release notes please visit the Community Fund Stability Patches release tag on GitHub.
To download the NavCoin Core 4.7.2 please visit the Wallet Downloads page.