CTxMemPool
has a member named rollingMinimumFeeRate
:
mutable double rollingMinimumFeeRate GUARDED_BY(cs); //!< minimal charge to get into the pool, decreases exponentially
The remark explains that it’s the minimal charge to get into the pool. However we’ve one other variable within the code base known as minRelayTxFee
:
CFeeRate minRelayTxFee = CFeeRate(DEFAULT_MIN_RELAY_TX_FEE);
/** Default for -minrelaytxfee, minimal relay charge for transactions */
static const unsigned int DEFAULT_MIN_RELAY_TX_FEE = 1000;
Two questions:
-
What’s the distinction between these two variables? and which is for what use instances?
-
Why the
rollingMinimumFeeRate
decreases exponentially?