DevelopmentPhore Blockchain

Core Development Update — 06/15/2020

Mnemonic seed words — New and existing wallets can make use of this feature*

Mnemonic seed words — New and existing wallets can make use of this feature*

New/Improved Features

Something we’re incredibly proud of is the implementation of Hierarchical deterministic (HD) addressing and Mnemonic seed words.

Drag and drop the seed words into the correct order.

Drag and drop the seed words into the correct order.

Performance Improvements

A big focus of this release has been on performance improvements. Some operations have been sped up substantially. The list of performance improvements are as follows:

  • QT front end performance improvements for wallets with large numbers of transactions (> 20,000). The Qt wallet will now only display the most recent 20,000 transactions. You are still able to do a full CSV export of all transactions. This makes a huge difference to performance for Qt wallets with a lot of transaction history.
  • Replaced mapNextTx with a smaller map to reduce memory usage.
  • Removed unnecessary multithreading lock in getrawpmempool
  • Improved performance over 20 times for RPC getchaintips (5.5 seconds -> 0.25 seconds)
  • Added SSE4 assembly support to optimize SHA256 for CPUs that support it.
  • Batching disk writes for flushing operations to wallet database
  • Batching block index writes to improve disk update performance.
  • Use object reference instead of copy to improve performance.
  • Replaced sigcache with cuckoocache for mempool validation operations.
  • Cache full script execution results to connect blocks 1.7 times faster (affects resyncing times as well as adding new blocks).

Bug Fixes

A list of bugs fixes in V1.6.4 of the Phore Core Wallet:

  • Fixed issue with editing Masternode information using the Qt wallet.
  • Fixed bug in walletframe.cpp that sometimes caused crashes using Qt 5.10.
  • Fixed ability to open proposal description URL by double-clicking on the proposal in Qt wallet.
  • Disable RPC calls during initialization to avoid certain crash conditions during the startup process.
  • Fixed reindex crash bug.
  • Set AA_EnableHighDpiScaling attribute early to eliminate output warning on startup.

Other Changes

  • Updated depends paths for OSX building.
  • Upgraded compatibility with OpenSSL 1.1.
  • Updated checkpoints to help minimize long-running forks.
  • Added security warning to debug console.
  • Refactoring changes to improve code organization and coding standards.