Merged
Conversation
Building with Boost 1.73.0 is broken. Github-Pull: bitcoin#34107 Rebased-From: f480c1e
Github-Pull: bitcoin#33950 Rebased-From: 7b90b4f
Github-Pull: bitcoin#34091 Rebased-From: caf4843
Contributor
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code Coverage & BenchmarksFor details see: https://corecheck.dev/bitcoin/bitcoin/pulls/34192. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please copy-paste |
Github-Pull: bitcoin#34174 Rebased-From: b23b901
Github-Pull: bitcoin#34182 Rebased-From: 84d8c52
Currently when CTRL-C is pressed and there is an active `waitforblockheight`, or `waitforblock`, or `waitfornewblock` RPC call, or a mining interface `waitTipChanged` IPC call with a long timeout, the node will not shut down right away, and will wait for the timeout to be reached before exiting. This behavior is not ideal and only happens when the node is stopped with CTRL-C or SIGTERM. When the node is stopped with `bitcoin-cli stop`, the wait calls are interrupted and the node does shut down right away. The next commit improves node behavior. This commit just adds test coverage to simplify the next commit and clarify the change in behavior there. Github-Pull: bitcoin#33511 Rebased-From: 6a29f79
Signal m_tip_block_cv when Ctrl-C is pressed or SIGTERM is received, the same way it is currently signalled when the `stop` RPC is called. This lets RPC calls like `waitforblockheight` and IPC calls like `waitTipChanged` be interrupted, instead of waiting for their original timeouts and delaying shutdown. Historical notes: - The behavior where `stop` RPC signals `m_tip_block_cv`, but CTRL-C does not, has been around since the condition variable was introduced in bitcoin#30409 (7eccdaf). - The signaling was later moved without changing behavior in bitcoin#30967 (5ca28ef). This commit moves it again to the Interrupt() function, which is probably the place it should have been added initially, so it works for Ctrl-C shutdowns as well as `stop` shutdowns. - A Qt shutdown bug calling wait methods was fixed previously in bitcoin#18452 (da73f15), and this change updates that fix to avoid the hang happening again in Qt. Github-Pull: bitcoin#33511 Rebased-From: c25a5e6
6061d93 to
865ab71
Compare
Github-Pull: bitcoin#34137 Rebased-From: fa727e3
865ab71 to
f22122b
Compare
This was referenced Jan 5, 2026
willcl-ark
approved these changes
Jan 5, 2026
Member
willcl-ark
left a comment
There was a problem hiding this comment.
ACK f22122b
These backports all look good to me 👍🏼
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backports:
address_deserialize_v2#34091