PR #30356 incorrectly changed a constant of 4000
to m_options.coinbase_max_additional_weight
in the check for when to give up finding another transaction to fill the block:
0 if (nConsecutiveFailed > MAX_CONSECUTIVE_FAILURES && nBlockWeight >
1- m_options.nBlockMaxWeight - 4000) {
2+ m_options.nBlockMaxWeight - m_options.block_reserved_weight) {
3 // Give up if we're close to full and haven't succeeded in a while
4 break;
5 }
But this constant did not deal with the reserved weight at all. It was in fact simply checking if the block was close to full, and if so, giving up finding another transaction to pad it with after MAX_CONSECUTIVE_FAILURES
failed attempts.
It doesn’t seem very logical to reuse the reserve weight for this purpose, and it would be overcomplicated to add yet another setting, so this PR changes it to a new constexpr.