Backports:
[32.x] More Backports #36427
pull fanquake wants to merge 11 commits into bitcoin:32.x from fanquake:32_0_rc4_final_backports changing 25 files +479 −197-
fanquake commented at 10:11 AM on October 3, 2026: member
-
6b6f33e3f5
fuzz: don't set random state for private broadcast test
Github-Pull: #36404 Rebased-From: 1d19cca0761ab35eb46867df2aacdc9715fa5ae0
- fanquake added this to the milestone 32.0 on Oct 3, 2026
- DrahtBot added the label Backport on Oct 3, 2026
-
DrahtBot commented at 10:11 AM on October 3, 2026: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
External sites
- Code coverage & benchmarks: https://corecheck.dev/bitcoin/bitcoin/pulls/36427
- Ralph review <img src=https://review.fish.foo/assets/bitcoin/bitcoin/36427.png alt="Ralph review status"> https://git.fish.foo/bitcoin/bitcoin/pulls/36427#author-ralph
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline and AI policy for information on the review process.
Type Reviewers ACK andrewtoth Stale ACK willcl-ark, sedited, marcofleon If your review is incorrectly listed, please copy-paste <code><!--meta-tag:bot-skip--></code> into the comment that the bot should ignore.
<!--5faf32d7da4f0f540f40219e4f7537a3-->
-
2475cc8100
http: log received bytes per client read
Github-Pull: #36303 Rebased-From: 767d86aaa780b81d0d3eede9ebb313cc100f4643
-
f8bd7f0f51
test: assert HTTP receive throttle from server-side log
Rewrite check_pipelined_data_is_throttled() to stop inferring server behavior from client-side send() results. Github-Pull: #36303 Rebased-From: 493850c4c4734acce0f75d1efcffb3868d4235fc
-
3c61fa20ef
net: always complete all initial private broadcast connections
Make sure we send out all three connections when intiating a private broadcast. Use MarkResolved instead of Remove to mark a tx as having been received back or mempool-conflicted. Prevent additional stale retry connections by tracking disconnects and explicitly granting new connections with TryGrantRetry. Github-Pull: #36277 Rebased-From: dc95a705d402d44b7092150878e33c75383a4d47
-
90db3042ef
net: remove PrivateBroadcast::DidNodeConfirmReception
This method is no longer called in production. Github-Pull: #36277 Rebased-From: 00c1b52ee56b9a2f067befc56c171eef27efda41
-
andrewtoth commented at 2:47 PM on October 6, 2026: contributor
-
c4c42177d1
ci: Use one network per container and rm it after success
The networks were left around for the next run, which may cause issues when they are changed in a future CI change. Fix it by using one network per container, and by cleaning it up after a successful run. This also allows to harden the script by removing the check=False on creation. On a failed run, networks will remain dangling and need manual pruning (same behaviour as before). Github-Pull: #36435 Rebased-From: fae564e66ab46bf35edb27ae2c1f42ec4dcdba77
-
54ae12e53c
ci: Use one subnet per container
This avoids collisions between concurrently running containerized CI jobs. Github-Pull: #36435 Rebased-From: fa966fd76764a0e150f654d7c2760e58226edba5
- fanquake marked this as ready for review on Oct 7, 2026
- sedited approved
-
sedited commented at 8:10 PM on October 7, 2026: contributor
ACK a323326a0d42a426456cb80be97bec29818b4235
- sedited requested review from willcl-ark on Oct 7, 2026
- sedited requested review from andrewtoth on Oct 7, 2026
- marcofleon approved
-
marcofleon commented at 9:01 PM on October 7, 2026: contributor
ACK a323326a0d42a426456cb80be97bec29818b4235
- andrewtoth approved
-
andrewtoth commented at 9:24 PM on October 7, 2026: contributor
ACK a323326a0d42a426456cb80be97bec29818b4235
-
willcl-ark commented at 9:42 AM on October 8, 2026: member
Looks OK.
Why the commit message change in b2c6f6f0271 though? Assume it's an editor accident, and not a big deal tbh.
--- /tmp/commit1 2026-10-08 10:41:30.369567197 +0100 +++ /tmp/commit2 2026-10-08 10:41:30.373567171 +0100 @@ -4,6 +4,7 @@ it down to Sock::Wait. On systems without poll() (e.g. macOS and the BSDs) the wait is done with select(), which fails with EINVAL for timeouts above 10^8 seconds on macOS. So since the libevent removal in +#34342, `bitcoin-cli -rpcclienttimeout=0 ...` fails on macOS with "Could not connect to the server". With poll(), the millisecond count is narrowed to int, so large values can wrap as well. @@ -13,7 +14,3 @@ Add a bitcoin-cli call with -rpcclienttimeout=0 to interface_bitcoin_cli.py. It fails on macOS without the cap. - -Github-Pull: [#36340](/bitcoin-bitcoin/36340/) -Rebased-From: 8dcf90a9b320c791f49f78de3b1094f54068e339 - - willcl-ark approved
-
willcl-ark commented at 9:43 AM on October 8, 2026: member
ACK a323326a0d42a426456cb80be97bec29818b4235
happy to re-ack with fixed commit message, if it's deemed important-enough to fix :)
-
db5b315955
util: cap Sock::WaitMany timeout
bitcoin-cli turns -rpcclienttimeout=0 into a 5 year timeout and passes it down to Sock::Wait. On systems without poll() (e.g. macOS and the BSDs) the wait is done with select(), which fails with EINVAL for timeouts above 10^8 seconds on macOS. So since the libevent removal in 34342, `bitcoin-cli -rpcclienttimeout=0 ...` fails on macOS with "Could not connect to the server". With poll(), the millisecond count is narrowed to int, so large values can wrap as well. Cap the timeout at INT_MAX milliseconds (about 24.8 days), which fits poll() and stays below the 31 days that POSIX requires select() to accept. Add a bitcoin-cli call with -rpcclienttimeout=0 to interface_bitcoin_cli.py. It fails on macOS without the cap. Github-Pull: #36340 Rebased-From: 8dcf90a
-
1795af9ae4
test: Extract and use sigterm_node in init_fd_overflow_test
Changes: * Extract a shared get_process_group_kwargs() to avoid repeating it * In sigterm_node, use node.wait_until_stopped() instead of the manual assert_equal(0, node.process.wait()) * Extract sigterm_node; can be reviewed via the git options --color-moved=dimmed-zebra --color-moved-ws=ignore-all-space * Use self.sigterm_node(node)+get_process_group_kwargs() over node.kill_process() for a graceful shutdown to avoid complaints from the llvm-symbolizer about a broken pipe when it resolves UBSAN suppressions during a process kill Github-Pull: #36392 Rebased-From: fad49a733d611f6d49ab9cb80509b79af500b384
- fanquake force-pushed on Oct 8, 2026
-
d66ea38afc
rpc: Fix OpenRPC hex pattern to allow empty strings
Github-Pull: #36462 Rebased-From: 4d7e00d36bf0d287dc241c3aae3852f3d799ed08
- DrahtBot added the label CI failed on Oct 8, 2026
- willcl-ark approved
-
willcl-ark commented at 12:16 PM on October 8, 2026: member
reACK d66ea38afc618b3380c41e950aa0bbca2f524558
only commit message fixed
- DrahtBot requested review from andrewtoth on Oct 8, 2026
- DrahtBot requested review from sedited on Oct 8, 2026
- DrahtBot requested review from marcofleon on Oct 8, 2026
- DrahtBot removed the label CI failed on Oct 8, 2026
- sedited approved
-
sedited commented at 12:22 PM on October 8, 2026: contributor
Re-ACK d66ea38afc618b3380c41e950aa0bbca2f524558
-
marcofleon commented at 4:44 PM on October 8, 2026: contributor
re-ACK d66ea38afc618b3380c41e950aa0bbca2f524558
-
101719cb43
bitcoin-util: print genesis hash in display order
Github-Pull: #36471 Rebased-From: cc8285e8c98ac91a380eec899bab2aed5863a458
-
andrewtoth commented at 2:15 PM on October 10, 2026: contributor
ACK 101719cb4325843ec31302d5b7c0af9d080ac087
- DrahtBot requested review from sedited on Oct 10, 2026
- DrahtBot requested review from willcl-ark on Oct 10, 2026
- fanquake merged this on Oct 10, 2026
- fanquake closed this on Oct 10, 2026
- fanquake deleted the branch on Oct 10, 2026
andrewtoth
willcl-ark
sedited
marcofleon
Milestone
32.0