|
|
|
@ -299,6 +299,7 @@ void CBlockPolicyEstimator::removeTx(uint256 hash)
|
|
|
|
|
CBlockPolicyEstimator::CBlockPolicyEstimator(const CFeeRate& _minRelayFee)
|
|
|
|
|
: nBestSeenHeight(0)
|
|
|
|
|
{
|
|
|
|
|
static_assert(MIN_FEERATE > 0, "Min feerate must be nonzero");
|
|
|
|
|
minTrackedFee = _minRelayFee < CFeeRate(MIN_FEERATE) ? CFeeRate(MIN_FEERATE) : _minRelayFee;
|
|
|
|
|
std::vector<double> vfeelist;
|
|
|
|
|
for (double bucketBoundary = minTrackedFee.GetFeePerK(); bucketBoundary <= MAX_FEERATE; bucketBoundary *= FEE_SPACING) {
|
|
|
|
@ -485,7 +486,7 @@ void CBlockPolicyEstimator::Read(CAutoFile& filein, int nFileVersion)
|
|
|
|
|
|
|
|
|
|
FeeFilterRounder::FeeFilterRounder(const CFeeRate& minIncrementalFee)
|
|
|
|
|
{
|
|
|
|
|
CAmount minFeeLimit = minIncrementalFee.GetFeePerK() / 2;
|
|
|
|
|
CAmount minFeeLimit = std::max(CAmount(1), minIncrementalFee.GetFeePerK() / 2);
|
|
|
|
|
feeset.insert(0);
|
|
|
|
|
for (double bucketBoundary = minFeeLimit; bucketBoundary <= MAX_FEERATE; bucketBoundary *= FEE_SPACING) {
|
|
|
|
|
feeset.insert(bucketBoundary);
|
|
|
|
|