Backports:
[31.x] More Backports #35699
pull fanquake wants to merge 15 commits into bitcoin:31.x from fanquake:more_31_x_backports changing 27 files +506 −150-
fanquake commented at 9:32 AM on July 10, 2026: member
-
b4dd6ba49b
chainparams: delete my DNS seed
Github-Pull: #35691 Rebased-From: d9080639804187601a84bad18582e7afb93101c3
- fanquake added this to the milestone 31.2 on Jul 10, 2026
- DrahtBot added the label Backport on Jul 10, 2026
-
DrahtBot commented at 9:32 AM on July 10, 2026: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/35699.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline and AI policy for information on the review process.
Type Reviewers ACK marcofleon, darosior, willcl-ark Stale ACK optout21 If your review is incorrectly listed, please copy-paste <code><!--meta-tag:bot-skip--></code> into the comment that the bot should ignore.
<!--5faf32d7da4f0f540f40219e4f7537a3-->
-
0086a236cb
net: introduce TxSendStatus internal state container
Github-Pull: #34873 Rebased-From: 999d18ab1ca6f802f13bfae8c4d10572ae55c6c3
-
ef7542aa29
net: delay stale evaluation and expose time_added in private broadcast
Github-Pull: #34873 Rebased-From: 325afe664d103bbdfd0758881f113aaa84f90627
-
c1a0ed5225
private broadcast: limit outstanding txs to count of 10,000
Add a belt-and-suspenders feature, limit the amount of memory and cpu possible when unlucky or simply misconfigured. The worst case limit is roughly 400kB * 10,000 = 4GB, regardless of usage pattern. Before this change, sheer volume of broadcasts, mismatches in standardness rules, or simply fee mismatches may result in unbounded growth of memory usage. As the feature may be expanded in the future, explicit bounds helps reasoning going forward. Github-Pull: #35406 Rebased-From: 5aea3d0373f7f1961ddbab4a6c26fd0d8e35275e
-
cd32ebd3f4
Release cs_main between individual private tx re-attempts
This queue may be hundreds to thousands of items, each of which are being revalidated at short interval. Allow the node to be more responsive in this scenario. Github-Pull: #35406 Rebased-From: cbf8c107c12f53045d584f5286337d45f1080954
- fanquake force-pushed on Jul 10, 2026
-
ec1123aed1
rpc: define and use new RPC_LIMIT_EXCEEDED error code
The server isn't running out of memory when the private broadcast transaction queue is full. Add a new RPC_LIMIT_EXCEEDED code that can be used whenever a resource is bound and currently at capacity. Github-Pull: #35678 Rebased-From: 82a02a2a2208a94686949cf3b5991a834b37263a
- fanquake force-pushed on Jul 10, 2026
- DrahtBot added the label CI failed on Jul 10, 2026
- DrahtBot removed the label CI failed on Jul 10, 2026
-
instagibbs commented at 5:29 PM on July 13, 2026: member
private tx commits lgtm https://github.com/bitcoin/bitcoin/pull/35699/commits/1f432b28b262fa65cce15df27dc109085f890491
-
optout21 commented at 6:48 AM on July 14, 2026: contributor
ACK 1f432b28b262fa65cce15df27dc109085f890491
I've reviewed commits, compared commits to the originals, checked local build & unit tests. I've noticed out of the 4 commits of #35678 only the first one is included, two test-only and one minor change not. I suppose they were not deemed important.
-
504ded6b0e
fuzz: Remove unused `DeserializeFromFuzzingInput` params overload
This overload has been unused since it was added in fac81affb527132945773a5315bd27fec61ec52f. Github-Pull: #35679 Rebased-From: efa7f8c1437681dfae536017da6f27c75f8f2309
-
444f2d7965
fuzz, refactor: Remove `Serialize` overload
Serialization parameters should be embedded into the object being serialized rather than passed as a separate argument. This works here because only serialization is performed and no new object needs to be constructed. Github-Pull: #35679 Rebased-From: afab8d4225c720f8d8658d4ea134505b3d9531f9
- fanquake force-pushed on Jul 20, 2026
-
c02ff3e793
p2p: Assume v2transport for addresses from seeds
By now, the vast majority of nodes in the network supports BIP324. Even if the optimistic guess would turn out to be wrong for a given node, we would just reconnect with v1. This is better than making v1 connections with peers when both nodes support v2. Github-Pull: #35766 Rebased-From: cf0f2aeae009c98615bffd4dafd74e46f20a0ae6
- fanquake force-pushed on Jul 22, 2026
- DrahtBot added the label CI failed on Jul 22, 2026
- DrahtBot removed the label CI failed on Jul 23, 2026
-
163821639c
depends, zeromq: Apply upstream patch
See https://github.com/zeromq/libzmq/pull/4911. Github-Pull: #35769 Rebased-From: e446ea09c4d37771798cf9b2d92c3cd1afeaac53
- fanquake force-pushed on Jul 23, 2026
-
3fa1a364cd
versionbits: Limit live activation params and activation warnings per BIP323
Test bits are conserved. This only has an effect on the warnings. Co-Authored-By: Antoine Poinsot <mail@antoinep.com> Github-Pull: #34779 Rebased-From: f802edf57cc844f9a1708b395906a974dded451c
-
513fd01c12
qa: test we don't warn for ignored unknown version bits deployments
Co-Authored-by: Anthony Towns <aj@erisian.com.au> Github-Pull: #34779 Rebased-From: 1d5240574a125af55a07cd74b70df61b3f5a27c9
- fanquake force-pushed on Aug 4, 2026
- fanquake marked this as ready for review on Aug 4, 2026
- fanquake requested review from marcofleon on Aug 4, 2026
-
in doc/bips.md:52 in 35bb5ef7a1
48 | @@ -49,6 +49,7 @@ BIPs that are implemented by Bitcoin Core: 49 | * [`BIP 173`](https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki): Bech32 addresses for native Segregated Witness outputs are supported as of **v0.16.0** ([PR 11167](https://github.com/bitcoin/bitcoin/pull/11167)). Bech32 addresses are generated by default as of **v0.20.0** ([PR 16884](https://github.com/bitcoin/bitcoin/pull/16884)). 50 | * [`BIP 174`](https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki): RPCs to operate on Partially Signed Bitcoin Transactions (PSBT) are present as of **v0.17.0** ([PR 13557](https://github.com/bitcoin/bitcoin/pull/13557)). 51 | * [`BIP 176`](https://github.com/bitcoin/bips/blob/master/bip-0176.mediawiki): Bits Denomination [QT only] is supported as of **v0.16.0** ([PR 12035](https://github.com/bitcoin/bitcoin/pull/12035)). 52 | +* [`BIP 323`](https://github.com/bitcoin/bips/blob/master/bip-0323.mediawiki): BIP 9 bits 5 to 28 (inclusive) are ignored for soft-fork signalling and unknown soft fork warnings as of **v32.0**.
darosior commented at 5:04 PM on August 4, 2026:Should this be
31.2on this branch?mraksoll4 referenced this in commit 4e50744009 on Aug 5, 20264a1fe04884doc: release notes and bips doc update for #34779
Github-Pull: #34779 Rebased-From: 94e3ac0b215a8fd749bd83947af5a36be44032c8
2ba8685578versionbits: update VersionBitsCache doc comment to match current behaviour
Co-Authored-by: Anthony Towns <aj@erisian.com.au> Github-Pull: #34779 Rebased-From: 107d4178d9184f62c74084f5954cc36f3213434f
doc: update release notes for v31.x 859c9201c4fanquake force-pushed on Aug 5, 2026marcofleon approvedmarcofleon commented at 11:44 AM on August 5, 2026: contributorlgtm ACK 859c9201c4de45e3b3ed548475b495963a062d99
darosior approveddarosior commented at 8:03 PM on August 7, 2026: memberutACK 859c9201c4de45e3b3ed548475b495963a062d99
willcl-ark approvedwillcl-ark commented at 9:58 AM on August 10, 2026: memberACK 859c9201c4de45e3b3ed548475b495963a062d99
Backports all look good.
All commits are in the release notes, and partial backports are documented correctly. Cleanup commits from 35678 are not included along with the fuzz changes from 35406, as 31.x doesn't have that target.
fanquake merged this on Aug 10, 2026fanquake closed this on Aug 10, 2026fanquake deleted the branch on Aug 10, 2026LabelsMilestone
31.2Linked (view graph)#34779 BIP 323: reserve version bits 5-28 as extra nonce space#34873 net: fix premature stale flagging of unpicked private broadcast txs#35406 private broadcast: limit outstanding txs to count of 10,000#35678 private broadcast: define and use new RPC_LIMIT_EXCEEDED error code ( + other follow-ups)#35679 fuzz: Remove unused `DeserializeFromFuzzingInput` params overload#35691 chainparams: delete my DNS seed#35766 p2p: Assume v2transport for addresses from seeds#35769 depends, zeromq: Apply upstream patch
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-08-21 06:51 UTC
More mirrored repositories can be found on mirror.b10c.me