Bitcoin Core Github
43 subscribers
123K links
Download Telegram
💬 hebasto commented on pull request "cmake: Always provide `RPATH` on NetBSD":
(https://github.com/bitcoin/bitcoin/pull/31543#issuecomment-2555845321)
> Edit: And where is your `libsqlite3.so.0` that it can't find?

As a result of executing the `pkgin install sqlite3` [command](https://github.com/bitcoin/bitcoin/blob/master/doc/build-netbsd.md#descriptor-wallet-support), the library is installed in the `/usr/pkg`:
```
$ ls -1 /usr/pkg/lib/libsqlite*
/usr/pkg/lib/libsqlite3.a
/usr/pkg/lib/libsqlite3.la
/usr/pkg/lib/libsqlite3.so
/usr/pkg/lib/libsqlite3.so.0
/usr/pkg/lib/libsqlite3.so.0.8.6
```

> What makes NetBSD special in this re
...
👍 TheCharlatan approved a pull request: "test: Embed univalue json tests in binary"
(https://github.com/bitcoin/bitcoin/pull/31542#pullrequestreview-2516311556)
ACK fabda022536c7a000a575bbb05059d27d29b5cca
💬 l0rinc commented on pull request "refactor: cache block[undo] serialized size for consecutive calls":
(https://github.com/bitcoin/bitcoin/pull/31490#issuecomment-2555874634)
@maflcko, @theuni, the reindex and IBD didn't show any speedup, so I've added a `SaveBlockToDiskBench` microbenchmark which only revealed a tiny speedup in itself, so I've demoted this from an optimization to a refactoring.
This PR is now meant as a cleanup for follow-ups such as https://github.com/bitcoin/bitcoin/pull/31539 and https://github.com/bitcoin/bitcoin/pull/31144 where the total IBD speedups (until 870k blocks) add up to 9% - and `ReadBlockFromDiskTest` benchmark is 2x faster.

<de
...
📝 hebasto opened a pull request: "cmake: Remove unused `BUILD_TESTING` variable from "dev-mode" preset"
(https://github.com/bitcoin/bitcoin/pull/31544)
On the master branch @ bb57017b2945d5e0bbd95c7f1a9369a8ab7c6fcd:
```
$ cmake -B build --preset dev-mode -DWITH_MULTIPROCESS=OFF
<snip>
-- Configuring done (12.0s)
-- Generating done (0.1s)
CMake Warning:
Manually-specified variables were not used by the project:

BUILD_TESTING


-- Build files have been written to: /home/hebasto/git/bitcoin/build
```

This PR resolves the issue.

The removed `BUILD_TESTING` variable is a part of the [`CTest`](https://cmake.org/cmake/help/l
...
💬 jstefanop commented on issue "LevelDB error: Corruption: block checksum mismatch didn't trigger reindex.":
(https://github.com/bitcoin/bitcoin/issues/30138#issuecomment-2555984586)
> I guess we should save a "reindex needed" flag somewhere when LevelDB corruption causes the node to shutdown?
>
> > [I wish I could re-download only the blocks since then, not have to re-download the entire chain again.](https://bitcoin.stackexchange.com/q/123059/4334)
>
> LevelDB corruption means you have a bad chainstate. It's not really possible to rebuild it without a full reindex from genesis, short of us doing something like utreexo commitments (even without a softfork, we could se
...
💬 kallewoof commented on pull request "rpc: Add signet_challenge field to getblockchaininfo and getmininginfo":
(https://github.com/bitcoin/bitcoin/pull/31531#discussion_r1893281157)
Makes no sense to me. I read through the entire thread in https://github.com/bitcoin/bitcoin/pull/18267 where this was added, and it looks like I put it there right at the end before it was merged, so it may have slipped under the radar.

Anyway, my suggestion: remove the duplication. Try the tests. If the tests fail, we know this at least has a purpose.
👋 Sjors's pull request is ready for review: "Add waitNext() to BlockTemplate interface"
(https://github.com/bitcoin/bitcoin/pull/31283)
💬 Sjors commented on pull request "Add waitNext() to BlockTemplate interface":
(https://github.com/bitcoin/bitcoin/pull/31283#issuecomment-2556096604)
#31325 landed so this is ready for review.
💬 Sjors commented on pull request "rpc: Add signet_challenge field to getblockchaininfo and getmininginfo":
(https://github.com/bitcoin/bitcoin/pull/31531#discussion_r1893337657)
Oh I get it now. There's two nodes for each signet, six in total. So this is fine.
💬 Sjors commented on pull request "rpc: Add signet_challenge field to getblockchaininfo and getmininginfo":
(https://github.com/bitcoin/bitcoin/pull/31531#discussion_r1893340846)
Thanks for the adding the helper. But now it's inconsistent with the `check_getblockchaininfo` helper. No strong preference for which style to use.

Maybe make it `def check_getmininginfo(self, node_idx, signet_idx):` and `check_getblockchaininfo(self, node_idx, signet_idx) ` and put them above `run_test`.
💬 kallewoof commented on pull request "rpc: Add signet_challenge field to getblockchaininfo and getmininginfo":
(https://github.com/bitcoin/bitcoin/pull/31531#discussion_r1893345947)
3 sets of pairs of nodes where each pair shares their set of args? OK, that sounds reasonable.
💬 Sjors commented on pull request "build: Switch to Qt 6":
(https://github.com/bitcoin/bitcoin/pull/30997#discussion_r1893346331)
Strange, I have an Ubuntu 24 desktop machine at home with comes with Wayland by default. And it was complaining about libxcb missing. It's possible that I accidentally uninstalled it at some point though.

https://releases.ubuntu.com/noble/ubuntu-24.04.1-desktop-amd64.manifest

It has `libwayland-cursor0` but not `libxcb-cursor0`, so maybe it's a matter of looking for that alternative name?
💬 Sjors commented on issue "Stratum v2 via IPC Mining Interface tracking issue":
(https://github.com/bitcoin/bitcoin/issues/31098#issuecomment-2556161334)
Updated description to hint at some new interface methods I plan to propose in the future: `createFutureBlock()`, `waitNewPowBlock()` and `verifyBlock()`.

However for now let's focus on the last interface method that the Template Provider needs, namely `waitNext()`. And on all the multiprocess changes.
💬 Sjors commented on issue "Mining Interface doesn't allow for Bitcoin Core to create blocks when it wants":
(https://github.com/bitcoin/bitcoin/issues/31109#issuecomment-2556186288)
@gitgab19 and I did a bit of benchmarking for (3) on a S19k Pro. We sent the machine a new job template every second. The proxy software was modified to keep the share difficulty very low.

The time between share roughly varied from 2-16ms. Presumably following a Poison distribution, but we didn't analyze that.

With `clean_jobs` [0] enabled we found that between sending a new template and getting the first share typically 22-65ms went by.

With `clean_jobs` disabled the delay was 49-65
...
👍 rkrux approved a pull request: "wallet: migration, avoid loading legacy wallet after failure when BDB isn't compiled"
(https://github.com/bitcoin/bitcoin/pull/31451#pullrequestreview-2516718199)
ACK 589ed1a8eafe1daed379ebb383602c8f220aef19
🤔 hebasto reviewed a pull request: "test: Embed univalue json tests in binary"
(https://github.com/bitcoin/bitcoin/pull/31542#pullrequestreview-2516946599)
Approach ACK fabda022536c7a000a575bbb05059d27d29b5cca.

Related: https://github.com/bitcoin/bitcoin/pull/30901 improves handling of data files in build scripts.
💬 hebasto commented on pull request "test: Embed univalue json tests in binary":
(https://github.com/bitcoin/bitcoin/pull/31542#discussion_r1893581463)
style nit: Follow surrounding style:
```suggestion
test/unitester.cpp
)
```
?
💬 hebasto commented on pull request "test: Embed univalue json tests in binary":
(https://github.com/bitcoin/bitcoin/pull/31542#discussion_r1893578552)
nit: Reorder?
💬 hebasto commented on pull request "test: Embed univalue json tests in binary":
(https://github.com/bitcoin/bitcoin/pull/31542#discussion_r1893578057)
Drop this one?
📝 0xB10C opened a pull request: "ci: optionally use local docker build cache"
(https://github.com/bitcoin/bitcoin/pull/31545)
By setting `DOCKER_BUILD_CACHE_HOST_DIR`, the task-specific docker images built during the CI run can be cached. This allows, for example, ephemeral CI runners to reuse the docker images (or layers of it) from earlier runs, by persisting the image cache before the ephemeral CI runner is shut down. The cache keyed by `CONTAINER_NAME`.

As `--cache-to` doesn't remove old cache files, the existing cache is removed after a successful `docker build` and the newly cached image is moved to it's locat
...