mirror of
https://github.com/Qortal/qortal.git
synced 2025-02-18 21:25:47 +00:00
Added Ed25519 private key to public key function accessible from SQL. Added Ed25519 public key to Qortal address function accessible from SQL. Used above functions to store minting account public key in SQL to reduce the number of unnecessarily repeated Ed25519 conversions. Used above functions to store reward-share minting's accounts address to reduce the number of unneccessarily repeated PK-to-address conversions. Reduced the usage of PublicKeyAccount to simply Account where possible, to reduce the number of Ed25519 conversions. Account.canMint(), Account.canRewardShare() and Account.getEffectiveMintingLevel() now only perform 1 repository fetch instead of potentially 2 or more. Cleaned up NTP main thread to reduce CPU load. A fixed offset can be applied to NTP.getTime() responses, for both scenarios when NTP is running or not. Useful for testing or simulating distant remote peers. Controller.onNetworkMessage() and Network.onMessage() have both had their complexity simplified by extracting per-case code to separate methods. Network's EPC engine's thread pool size no longer hard-coded, but comes from Settings.maxNetworkThreadPoolSize, which is still 10 by default, but can be increased for high-availability nodes. Network's EPC task-producing code streamlined to reduce CPU load. Generally reduced calls to System.currentTimeMillis(), especially where the value would only be used in verbose logging situations, and especially in high-call-volume methods, like within repository.