mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
Backporting fixes for CMasternodeMan::CheckAndRemove
and smartfee (+test)
Closes #738
This commit is contained in:
parent
fbd43191b2
commit
6cfe5bfe2b
@ -40,7 +40,7 @@ class EstimateFeeTest(BitcoinTestFramework):
|
||||
def run_test(self):
|
||||
# Prime the memory pool with pairs of transactions
|
||||
# (high-priority, random fee and zero-priority, random fee)
|
||||
min_fee = Decimal("0.001")
|
||||
min_fee = Decimal("0.00010000")
|
||||
fees_per_kb = [];
|
||||
for i in range(12):
|
||||
(txid, txhex, fee) = random_zeropri_transaction(self.nodes, Decimal("1.1"),
|
||||
@ -58,7 +58,7 @@ class EstimateFeeTest(BitcoinTestFramework):
|
||||
print("Fee estimates, super-stingy miner: "+str([str(e) for e in all_estimates]))
|
||||
|
||||
# Estimates should be within the bounds of what transactions fees actually were:
|
||||
delta = 1.0e-6 # account for rounding error
|
||||
delta = 1.0e-5 # account for rounding error
|
||||
for e in filter(lambda x: x >= 0, all_estimates):
|
||||
if float(e)+delta < min(fees_per_kb) or float(e)-delta > max(fees_per_kb):
|
||||
raise AssertionError("Estimated fee (%f) out of range (%f,%f)"%(float(e), min_fee_kb, max_fee_kb))
|
||||
|
@ -1539,7 +1539,7 @@ int64_t GetBlockValue(int nBits, int nHeight, const CAmount& nFees)
|
||||
double dDiff = (double)0x0000ffff / (double)(nBits & 0x00ffffff);
|
||||
|
||||
/* fixed bug caused diff to not be correctly calculated */
|
||||
if(nHeight > 4500 || Params().NetworkID() == CBaseChainParams::TESTNET) dDiff = ConvertBitsToDouble(nBits);
|
||||
if(nHeight > 4500 || Params().NetworkID() != CBaseChainParams::MAIN) dDiff = ConvertBitsToDouble(nBits);
|
||||
|
||||
int64_t nSubsidy = 0;
|
||||
if(nHeight >= 5465) {
|
||||
|
@ -327,9 +327,10 @@ void CMasternodeMan::CheckAndRemove(bool forceExpiredRemoval)
|
||||
// remove expired mapSeenMasternodeBroadcast
|
||||
map<uint256, CMasternodeBroadcast>::iterator it3 = mapSeenMasternodeBroadcast.begin();
|
||||
while(it3 != mapSeenMasternodeBroadcast.end()){
|
||||
if((*it3).second.lastPing.sigTime < GetTime()-(MASTERNODE_REMOVAL_SECONDS*2)){
|
||||
mapSeenMasternodeBroadcast.erase(it3++);
|
||||
if((*it3).second.lastPing.sigTime < GetTime() - MASTERNODE_REMOVAL_SECONDS*2){
|
||||
LogPrint("masternode", "CMasternodeMan::CheckAndRemove - Removing expired Masternode broadcast %s\n", (*it3).second.GetHash().ToString());
|
||||
masternodeSync.mapSeenSyncMNB.erase((*it3).second.GetHash());
|
||||
mapSeenMasternodeBroadcast.erase(it3++);
|
||||
} else {
|
||||
++it3;
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ class CAutoFile;
|
||||
|
||||
inline double AllowFreeThreshold()
|
||||
{
|
||||
return COIN * 576 / 250;
|
||||
return COIN * 144 / 250;
|
||||
}
|
||||
|
||||
inline bool AllowFree(double dPriority)
|
||||
|
Loading…
Reference in New Issue
Block a user