release note: cpfp carveout removed in 31.0 #34266
pull instagibbs wants to merge 1 commits into bitcoin:master from instagibbs:2026-01-cpfp_carveout_kaput changing 1 files +8 −0-
instagibbs commented at 8:56 pm on January 12, 2026: memberSeems it was overlooked for release notes, so let’s add something
-
DrahtBot commented at 8:56 pm on January 12, 2026: contributor
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/34266.
Reviews
See the guideline for information on the review process.
If your review is incorrectly listed, please copy-paste <!–meta-tag:bot-skip–> into the comment that the bot should ignore.
LLM Linter (✨ experimental)
Possible typos and grammar issues:
- 10kvB -> 10 kB [“10kvB” is not a valid/recognizable size unit; separate the number and unit (e.g., “10 kB”) so the size is comprehensible]
2026-01-12
-
instagibbs force-pushed on Jan 12, 2026
-
DrahtBot added the label CI failed on Jan 12, 2026
-
in doc/release-notes-33629.md:50 in 1d4a7c023d
45+- The "CPFP Carveout" has been removed from the mempool logic. The CPFP carveout 46+ allowed one additional child transaction to be added to a package that's already 47+ at its descendant limit, but only if that child has exactly one ancestor 48+ (the package's root) and is small (no larger than 10kvB). The addition of a cluster count 49+ limit makes the CPFP carveout rule useless, because a carveout 50+ cannot be allowed to bypass the cluster count limit. It is expected that smart
l0rinc commented at 10:22 pm on January 12, 2026:I might be off here, but is it cluster count or size limit?
https://github.com/bitcoin/bitcoin/blob/34a77138b7a6f65a31c6273f2770e943cc0b474b/src/txgraph.cpp#L1957-L1960 and https://github.com/bitcoin/bitcoin/blob/34a77138b7a6f65a31c6273f2770e943cc0b474b/src/txgraph.cpp#L2134 indicates it’s
size:0 (the package's root) and is small (no larger than 10kvB). The addition of a cluster size 1 limit makes the CPFP carveout rule useless, because a carveout 2 cannot be allowed to bypass the cluster size limit. It is expected that smart
sipa commented at 10:29 pm on January 12, 2026:It’s count.
The old ancestor count limit was 25. The CPFP carve-out allowed ancestor sets in specific circumstances to have 26 elements.
There is no more ancestor count limit, instead there is a cluster count limit of 64, which has no exceptions.
l0rinc commented at 10:30 pm on January 12, 2026:thanks for clarifying, please resolve
instagibbs commented at 10:31 pm on January 12, 2026:interestingly the commit language I was cribbing a bit from said size, but yes it’s actually count
glozow commented at 10:59 pm on January 12, 2026:0 (the package's root) and is small (no larger than 10kvB). 1 Nothing is allowed to bypass the cluster count limit. It is expected that smart
instagibbs commented at 11:04 pm on January 12, 2026:donel0rinc approvedDrahtBot removed the label CI failed on Jan 12, 2026release note: cpfp carveout removed in 31.0 61726483e1instagibbs force-pushed on Jan 12, 2026l0rinc commented at 11:06 pm on January 12, 2026: contributorACK 61726483e1c226c87212d0e12a3dd640fc393791glozow commented at 11:10 pm on January 12, 2026: memberACK 61726483e1c226c87212d0e12a3dd640fc393791glozow merged this on Jan 12, 2026glozow closed this on Jan 12, 2026
fanquake added the label Docs on Jan 13, 2026fanquake added this to the milestone 31.0 on Jan 13, 2026
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-01-22 18:13 UTC
More mirrored repositories can be found on mirror.b10c.me