💬 fanquake commented on issue "build: `libcapnp*.so` "warning: GCS is required by -z gcs, but this shared library lacks the necessary property note."":
(https://github.com/bitcoin/bitcoin/issues/33556#issuecomment-3376823119)
> Assuming the same warning happen when when building other binaries like bitcoind and test_bitcoin it's probably not worth it.
There are no other linker warnings for any other binaries.
(https://github.com/bitcoin/bitcoin/issues/33556#issuecomment-3376823119)
> Assuming the same warning happen when when building other binaries like bitcoind and test_bitcoin it's probably not worth it.
There are no other linker warnings for any other binaries.
💬 fanquake commented on pull request "[29.x] build: fix depends Qt download link":
(https://github.com/bitcoin/bitcoin/pull/33563#issuecomment-3376826209)
Backported to 28.x in #33557.
(https://github.com/bitcoin/bitcoin/pull/33563#issuecomment-3376826209)
Backported to 28.x in #33557.
💬 ryanofsky commented on issue "[`v30.0rc3`]`bitcoin-node` aborts with mining IPC interface usage":
(https://github.com/bitcoin/bitcoin/issues/33554#issuecomment-3376864778)
Just to be clear about next steps, the node aborts should be prevented by https://github.com/bitcoin-core/libmultiprocess/pull/214 which is set to be backported in https://github.com/bitcoin/bitcoin/pull/33519. (The aborts were originally intentional but are an unnecessarily harsh way to fail, so those PR's replace them with IPC "thread busy" errors.)
Regardless of this, the rust client code needs to be changed to either not make other IPC calls at the same time as there is an active `waitNext(
...
(https://github.com/bitcoin/bitcoin/issues/33554#issuecomment-3376864778)
Just to be clear about next steps, the node aborts should be prevented by https://github.com/bitcoin-core/libmultiprocess/pull/214 which is set to be backported in https://github.com/bitcoin/bitcoin/pull/33519. (The aborts were originally intentional but are an unnecessarily harsh way to fail, so those PR's replace them with IPC "thread busy" errors.)
Regardless of this, the rust client code needs to be changed to either not make other IPC calls at the same time as there is an active `waitNext(
...
💬 ryanofsky commented on issue "build: `libcapnp*.so` "warning: GCS is required by -z gcs, but this shared library lacks the necessary property note."":
(https://github.com/bitcoin/bitcoin/issues/33556#issuecomment-3376909971)
> > Assuming the same warning happen when when building other binaries like bitcoind and test_bitcoin it's probably not worth it.
>
> There are no other linker warnings for any other binaries.
Sorry was mistaken: there should not be a warning for `bitcoind` because that is not linked against capnproto. But I would expect warnings to appear when linking `bitcoin-node` and `test_bitcoin`. It would be unexpected if make VERBOSE=1 output showed `bitcoin-node` being linked `libcapnp.so` but not pro
...
(https://github.com/bitcoin/bitcoin/issues/33556#issuecomment-3376909971)
> > Assuming the same warning happen when when building other binaries like bitcoind and test_bitcoin it's probably not worth it.
>
> There are no other linker warnings for any other binaries.
Sorry was mistaken: there should not be a warning for `bitcoind` because that is not linked against capnproto. But I would expect warnings to appear when linking `bitcoin-node` and `test_bitcoin`. It would be unexpected if make VERBOSE=1 output showed `bitcoin-node` being linked `libcapnp.so` but not pro
...
🤔 stratospher reviewed a pull request: "Improve LastCommonAncestor performance + add tests"
(https://github.com/bitcoin/bitcoin/pull/33515#pullrequestreview-3310200173)
ACK 3635d62f5a935801e26a0d5fa2cb5e2dbbb42f9b.
Seems to work better when there are fewer but deeper forks.
Got this when running each LCA algorithm 10,000 times on the same block pairs in the same block constellation:
- No forks - kind of same
LastCommonAncestor : 962us
NaiveLastCommonAncestor : 986us
- 0.1% forks - 18x slower
LastCommonAncestor : 1103us
NaiveLastCommonAncestor : 20481us
- 0.5% forks - 11x slower
LastCommonAncestor : 1030us
NaiveLastCommonAncestor : 11591us
...
(https://github.com/bitcoin/bitcoin/pull/33515#pullrequestreview-3310200173)
ACK 3635d62f5a935801e26a0d5fa2cb5e2dbbb42f9b.
Seems to work better when there are fewer but deeper forks.
Got this when running each LCA algorithm 10,000 times on the same block pairs in the same block constellation:
- No forks - kind of same
LastCommonAncestor : 962us
NaiveLastCommonAncestor : 986us
- 0.1% forks - 18x slower
LastCommonAncestor : 1103us
NaiveLastCommonAncestor : 20481us
- 0.5% forks - 11x slower
LastCommonAncestor : 1030us
NaiveLastCommonAncestor : 11591us
...
💬 fanquake commented on pull request "[28.x] ci: Fix Qt 5.15 URL":
(https://github.com/bitcoin/bitcoin/pull/33561#issuecomment-3376996728)
ACK 2cd432dc6dad1b9f97d1c791ff1c1b0dd25a8db6
(https://github.com/bitcoin/bitcoin/pull/33561#issuecomment-3376996728)
ACK 2cd432dc6dad1b9f97d1c791ff1c1b0dd25a8db6
🚀 fanquake merged a pull request: "[28.x] ci: Fix Qt 5.15 URL"
(https://github.com/bitcoin/bitcoin/pull/33561)
(https://github.com/bitcoin/bitcoin/pull/33561)
💬 furszy commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2410734769)
> It went well thanks [0030dc5](https://github.com/bitcoin/bitcoin/commit/0030dc5ba46da402d36edd5cb32492397deeae7f)
> Sorry for hijacking the PR :)
hehe np, I owe you a few reviews anyway.
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2410734769)
> It went well thanks [0030dc5](https://github.com/bitcoin/bitcoin/commit/0030dc5ba46da402d36edd5cb32492397deeae7f)
> Sorry for hijacking the PR :)
hehe np, I owe you a few reviews anyway.
📝 fanquake opened a pull request: "[27.x] Fix Qt download URLs"
(https://github.com/bitcoin/bitcoin/pull/33564)
Backports:
* #33561
* #33563
(https://github.com/bitcoin/bitcoin/pull/33564)
Backports:
* #33561
* #33563
💬 ryanofsky commented on pull request "Update libmultiprocess subtree to support reduced logging":
(https://github.com/bitcoin/bitcoin/pull/33518#issuecomment-3377126580)
<!-- begin push-2 -->
Updated 0e3fd1142c45f8feced5a4cfff3ed654e450310f -> 2e24e1c7331105ab141b3d734c19a2ccf857c293 ([`pr/subtree-6.1`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6.1) -> [`pr/subtree-6.2`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6.2), [compare](https://github.com/ryanofsky/bitcoin/compare/pr/subtree-6.1..pr/subtree-6.2))<!-- end --> adding https://github.com/bitcoin-core/libmultiprocess/pull/222 to fix CI errors
<!-- begin push-3 -->
Updated 2e24
...
(https://github.com/bitcoin/bitcoin/pull/33518#issuecomment-3377126580)
<!-- begin push-2 -->
Updated 0e3fd1142c45f8feced5a4cfff3ed654e450310f -> 2e24e1c7331105ab141b3d734c19a2ccf857c293 ([`pr/subtree-6.1`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6.1) -> [`pr/subtree-6.2`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6.2), [compare](https://github.com/ryanofsky/bitcoin/compare/pr/subtree-6.1..pr/subtree-6.2))<!-- end --> adding https://github.com/bitcoin-core/libmultiprocess/pull/222 to fix CI errors
<!-- begin push-3 -->
Updated 2e24
...
👋 ryanofsky's pull request is ready for review: "Update libmultiprocess subtree to support reduced logging"
(https://github.com/bitcoin/bitcoin/pull/33518)
(https://github.com/bitcoin/bitcoin/pull/33518)
💬 ryanofsky commented on pull request "Update libmultiprocess subtree in 30.x branch":
(https://github.com/bitcoin/bitcoin/pull/33519#issuecomment-3377143022)
<!-- begin push-2 -->
Updated 8c0c0bf1b078bc931965418ef9b28d176d57db0d -> ae63cc4bf2d25a5b7ce9d166aa288431e8ca16a7 ([`pr/subtree-6-v30.1`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6-v30.1) -> [`pr/subtree-6-v30.2`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6-v30.2), [compare](https://github.com/ryanofsky/bitcoin/compare/pr/subtree-6-v30.1..pr/subtree-6-v30.2))<!-- end --> adding https://github.com/bitcoin-core/libmultiprocess/pull/222 and https://github.com/bitcoin-
...
(https://github.com/bitcoin/bitcoin/pull/33519#issuecomment-3377143022)
<!-- begin push-2 -->
Updated 8c0c0bf1b078bc931965418ef9b28d176d57db0d -> ae63cc4bf2d25a5b7ce9d166aa288431e8ca16a7 ([`pr/subtree-6-v30.1`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6-v30.1) -> [`pr/subtree-6-v30.2`](https://github.com/ryanofsky/bitcoin/commits/pr/subtree-6-v30.2), [compare](https://github.com/ryanofsky/bitcoin/compare/pr/subtree-6-v30.1..pr/subtree-6-v30.2))<!-- end --> adding https://github.com/bitcoin-core/libmultiprocess/pull/222 and https://github.com/bitcoin-
...
👋 ryanofsky's pull request is ready for review: "Update libmultiprocess subtree in 30.x branch"
(https://github.com/bitcoin/bitcoin/pull/33519)
(https://github.com/bitcoin/bitcoin/pull/33519)
💬 stringintech commented on pull request "fuzz: compact block harness":
(https://github.com/bitcoin/bitcoin/pull/33300#discussion_r2410849029)
When fuzzing on macOS (Apple Silicon), I ran into lots of crashes when copying the cached dir into the destination:
```
libc++abi: terminating due to uncaught exception of type std::__1::__fs::filesystem::filesystem_error: filesystem error: in copy_file: File exists ["/var/folders/wc/3l6l_0b92zzg54v6rmvqqn300000gn/T/test_common bitcoin/cmpctblock/6c5e38c6dcfbc2607321/regtest/blocks/xor.dat"] ["/var/folders/wc/3l6l_0b92zzg54v6rmvqqn300000gn/T/cmpctblock_cachedca12974312651650d6b0/datadir/regt
...
(https://github.com/bitcoin/bitcoin/pull/33300#discussion_r2410849029)
When fuzzing on macOS (Apple Silicon), I ran into lots of crashes when copying the cached dir into the destination:
```
libc++abi: terminating due to uncaught exception of type std::__1::__fs::filesystem::filesystem_error: filesystem error: in copy_file: File exists ["/var/folders/wc/3l6l_0b92zzg54v6rmvqqn300000gn/T/test_common bitcoin/cmpctblock/6c5e38c6dcfbc2607321/regtest/blocks/xor.dat"] ["/var/folders/wc/3l6l_0b92zzg54v6rmvqqn300000gn/T/cmpctblock_cachedca12974312651650d6b0/datadir/regt
...
📝 vasild opened a pull request: "net_processing: rename RelayTransaction to better describe what it does"
(https://github.com/bitcoin/bitcoin/pull/33565)
Rename `PeerManager::RelayTransaction()` to
`PeerManager::ScheduleTxForBroadcastToAll()`. The transaction is not relayed when the method returns. It is only scheduled for broadcasting at a later time. Also, there will be another method which only schedules for broadcast to Tor or I2P peers.
---
This is part of [#29415 Broadcast own transactions only via short-lived Tor or I2P connections](https://github.com/bitcoin/bitcoin/pull/29415). Putting it in its own PR to reduce the size of #29415
...
(https://github.com/bitcoin/bitcoin/pull/33565)
Rename `PeerManager::RelayTransaction()` to
`PeerManager::ScheduleTxForBroadcastToAll()`. The transaction is not relayed when the method returns. It is only scheduled for broadcasting at a later time. Also, there will be another method which only schedules for broadcast to Tor or I2P peers.
---
This is part of [#29415 Broadcast own transactions only via short-lived Tor or I2P connections](https://github.com/bitcoin/bitcoin/pull/29415). Putting it in its own PR to reduce the size of #29415
...
💬 mzumsande commented on pull request "validation: Improve warnings in case of chain corruption":
(https://github.com/bitcoin/bitcoin/pull/33553#discussion_r2410894036)
done
(https://github.com/bitcoin/bitcoin/pull/33553#discussion_r2410894036)
done
💬 m3dwards commented on pull request "Clear out space on GHA jobs":
(https://github.com/bitcoin/bitcoin/pull/33514#issuecomment-3377259935)
I wondered if it could be sped up and it looks like deleting `/usr/local/lib/android` is what takes the time. It's 9.8gb so probably not worth skipping the deletion. I tried a few tricks like rsyncing an empty directory over it but it looks like `rm -rf` is king in terms of speed.
So I concur, perhaps best to just apply to the job that needs it.
(https://github.com/bitcoin/bitcoin/pull/33514#issuecomment-3377259935)
I wondered if it could be sped up and it looks like deleting `/usr/local/lib/android` is what takes the time. It's 9.8gb so probably not worth skipping the deletion. I tried a few tricks like rsyncing an empty directory over it but it looks like `rm -rf` is king in terms of speed.
So I concur, perhaps best to just apply to the job that needs it.
🤔 janb84 reviewed a pull request: "validation: Improve warnings in case of chain corruption"
(https://github.com/bitcoin/bitcoin/pull/33553#pullrequestreview-3310548122)
Concept ACK
This PR introduces a informative warning for the user in the case that the users has an invalid block (header) due to corruption or otherwise.
NIT: why keep looping ? is there a path where the node can recover from this ?
partial code review ✅
<details><summary> this PR </summary>
Gives warning in case of chain corruption
```sh
2025-10-07T14:24:52Z Pre-synchronizing blockheaders, height: 266146 (~97.53%)
2025-10-07T14:24:55Z [warning] Received header for a bl
...
(https://github.com/bitcoin/bitcoin/pull/33553#pullrequestreview-3310548122)
Concept ACK
This PR introduces a informative warning for the user in the case that the users has an invalid block (header) due to corruption or otherwise.
NIT: why keep looping ? is there a path where the node can recover from this ?
partial code review ✅
<details><summary> this PR </summary>
Gives warning in case of chain corruption
```sh
2025-10-07T14:24:52Z Pre-synchronizing blockheaders, height: 266146 (~97.53%)
2025-10-07T14:24:55Z [warning] Received header for a bl
...
📝 Sjors opened a pull request: "miner: empty mempool special case for waitNext()"
(https://github.com/bitcoin/bitcoin/pull/33566)
Block template fees are calculated by looping over new_tmpl->vTxFees and return (early) once the fee_threshold is exceeded.
This left an edge case when the mempool is empty, which this commit fixes and adds a test for.
Fixes https://github.com/Sjors/sv2-tp/issues/9
(https://github.com/bitcoin/bitcoin/pull/33566)
Block template fees are calculated by looping over new_tmpl->vTxFees and return (early) once the fee_threshold is exceeded.
This left an edge case when the mempool is empty, which this commit fixes and adds a test for.
Fixes https://github.com/Sjors/sv2-tp/issues/9
💬 Sjors commented on pull request "miner: empty mempool special case for waitNext()":
(https://github.com/bitcoin/bitcoin/pull/33566#issuecomment-3377304798)
This is not worth the effort to backport imo.
(https://github.com/bitcoin/bitcoin/pull/33566#issuecomment-3377304798)
This is not worth the effort to backport imo.