NavCoin Core 4.7.2 - Community Fund Stability Patches

  • Home
  • Notices
  • NavCoin Core 4.7.2 - Community Fund Stability Patches
Craig MacGregor
19 Dec 2019
NavCoin Core 4.7.2 - Community Fund Stability Patches

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

<Pull Request 634> <Commit 049978e>

This patch fixes Issue 630 and introduces several important changes.

  • New RPC command getcfunddbstatehash covered by functional test cfunddb-statehash.py
  • New state for payment requests 6 when those are paid.
  • The payment request parameter paidOnBlock is substituted by stateChangedOnBlock when state is 6
  • 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.
  • verifychain now checks for the consistency of the CFundDB state hash when level 4 is specified.

IMPORTANT

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 -reindex -datadir=/tmp/reindexdata/
  • 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

<Pull Request 622> <Commit 37fa72e>

This PR adds extra log for all the modifications of the CFundDB and ensures entries are read in the memory cache before being modified.

Restart testnet

<Pull Request 628> <Commit b8ed018>

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

More Information

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.

Craig MacGregor
19 Dec 2019