Bitcoin Core Github
44 subscribers
120K links
Download Telegram
💬 maflcko commented on pull request "validation: Do less work in NeedsRedownload":
(https://github.com/bitcoin/bitcoin/pull/31714#issuecomment-2905035622)
I still don't understand why this would be safe to remove the check, or just check a single block (start or end), when it is required to check all blocks. Otherwise, upgrading from an ancient blocksdir could lead to errors and bugs down the line. I know this is an edge case, but we are talking about consensus code, so if the introduced failure mode is intentional, it would be good to at least mention or document it.

The exact steps to reproduce the new bug are:

* (optional) Download any nu
...
🤔 murchandamus reviewed a pull request: "wallet: Keep track of the wallet's own transaction outputs in memory"
(https://github.com/bitcoin/bitcoin/pull/27286#pullrequestreview-2865141901)
ReACK d73e4f878d143fe86d84e0e6f18c2a88c0cb8609
💬 murchandamus commented on pull request "wallet: Keep track of the wallet's own transaction outputs in memory":
(https://github.com/bitcoin/bitcoin/pull/27286#discussion_r2105070757)
I think I just didn’t fully understand what was happening here then.
💬 murchandamus commented on pull request "wallet: Keep track of the wallet's own transaction outputs in memory":
(https://github.com/bitcoin/bitcoin/pull/27286#discussion_r2105072678)
It would probably be best documented by updating the description of the `GetDebit` function whenever someone changes code nearby.
💬 mzumsande commented on issue "compact block fingerprinting":
(https://github.com/bitcoin/bitcoin/issues/28272#issuecomment-2905198756)
Some discussion about the privacy implications for blocksonly peers in IRC: https://bitcoin-irc.chaincode.com/bitcoin-core-dev/2025-05-23#1123715;

Dropping unsolicted `cmpctblock` messages makes sense to me as well (and doesn't appear to be at odds with anything in BIP152).
📝 hebasto reopened a pull request: "subprocess: Let shell parse command on non-Windows systems"
(https://github.com/bitcoin/bitcoin/pull/32577)
Fixes https://github.com/bitcoin/bitcoin/issues/32574.

The `subprocess::Popen` constructor has two overloads: https://github.com/bitcoin/bitcoin/blob/7763e86afa045910a14ac9b2cd644927a447370b/src/util/subprocess.h#L938-L941

During the migration from Boost.Process in https://github.com/bitcoin/bitcoin/pull/28981, the second was chosen for two reasons: (1) it minimized changes at the call sites, and (2) it [addressed](https://github.com/bitcoin/bitcoin/pull/28981#issuecomment-1837238921) quot
...
💬 hebasto commented on pull request "subprocess: Let shell parse command on non-Windows systems":
(https://github.com/bitcoin/bitcoin/pull/32577#issuecomment-2905201466)
Reopened per [request](https://github.com/bitcoin/bitcoin/pull/32601#discussion_r2104898126).
💬 hebasto commented on pull request "test: Fix `system_tests/run_command` test":
(https://github.com/bitcoin/bitcoin/pull/32601#discussion_r2105083977)
> Yes, but it is unclear to me why it was closed, when it looks like the correct approach

Reopened.
💬 jonatack commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#issuecomment-2905206387)
Concept ACK, need to review this
🤔 jonatack reviewed a pull request: "wallet, rpc: clarify wallet version in getwalletinfo help"
(https://github.com/bitcoin/bitcoin/pull/32603#pullrequestreview-2865264982)
ACK 21ddfbf888dabed1bb89b30481f1391727f6212

modulo nit suggestion, and PR/commit title `s/wallet, rpc/rpc, doc/`
💬 jonatack commented on pull request "wallet, rpc: clarify wallet version in getwalletinfo help":
(https://github.com/bitcoin/bitcoin/pull/32603#discussion_r2105156607)
```suggestion
{RPCResult::Type::NUM, "walletversion", "the current wallet format (the oldest client version guaranteed to understand this wallet)"},
```
💬 Crypt-iQ commented on issue "compact block fingerprinting":
(https://github.com/bitcoin/bitcoin/issues/28272#issuecomment-2905381340)
> So I had thought the code would check if there were too many missing transactions and just request a full block if all were missing. That doesn't address the general attack (since the attacker could admit some real txn that are in the block) but it would mostly address the blocksonly case (and could easily get a if blocksonly check so that it always did) -- but I can't find that. It should be added.

Is this still useful if we add a patch to drop unsolicited `cmpctblock` messages? An attacker
...
🤔 jonatack reviewed a pull request: "log: print reason when writing chainstate"
(https://github.com/bitcoin/bitcoin/pull/32404#pullrequestreview-2865314208)
ACK cfc8056c316be4742938d64ea5207b90d10d1e28
💬 jonatack commented on pull request "log: print reason when writing chainstate":
(https://github.com/bitcoin/bitcoin/pull/32404#discussion_r2105186391)
nit, "FlushStateToDisk" might be redundant here, as here is the log with `-logsourcelocations=1`

```
2025-05-23T17:59:04.348160Z [validation.cpp:2868] [FlushStateToDisk] [coindb] FlushStateToDisk write: flush mode=PERIODIC, prune=0, cache_large=1, cache_critical=0, periodic=0
```
mzumsande closed a pull request: "validation: Do less work in NeedsRedownload"
(https://github.com/bitcoin/bitcoin/pull/31714)
💬 mzumsande commented on pull request "validation: Do less work in NeedsRedownload":
(https://github.com/bitcoin/bitcoin/pull/31714#issuecomment-2905395016)
I just thought that there should be a point in time where this edge-case scenario with multiple switches between pre-segwit and post-segwit datadirs would not be sufficiently realistic anymore to justify that each node runs these extra checks with each startup.

I could change the PR to describe this switching back-and-forth scenario explicitly (it alludes to it with "less thorough" / "most typical case"), but the currently saved time during startup (~40milliseconds on mainnet for me) does not
...
💬 achow101 commented on pull request "wallet, rpc: Return normalized descriptor in parent_descs":
(https://github.com/bitcoin/bitcoin/pull/32594#issuecomment-2905414873)
> nit: "prividing" -> "providing"

Fixed
💬 achow101 commented on pull request "descriptors: MuSig2":
(https://github.com/bitcoin/bitcoin/pull/31244#discussion_r2105211527)
`musig()` expressions are a key expression, which itself contains multiple key expressions. It needs to be able to increment `key_exp_index` such that the caller will also know what the `key_exp_index` has been incremented to. The easiest way to do this was a reference.
💬 achow101 commented on pull request "descriptors: MuSig2":
(https://github.com/bitcoin/bitcoin/pull/31244#discussion_r2105211725)
Done
💬 achow101 commented on pull request "descriptors: MuSig2":
(https://github.com/bitcoin/bitcoin/pull/31244#discussion_r2105211791)
Done