transaction charges – What’s the distinction between minRelayTxFee and rollingMinimumFeeRate?


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:

  1. What’s the distinction between these two variables? and which is for what use instances?

  2. Why the rollingMinimumFeeRate decreases exponentially?

Supply hyperlink


Please enter your comment!
Please enter your name here