Bitcoin Core Github
44 subscribers
122K links
Download Telegram
💬 maflcko commented on pull request "ci: Checkout latest merged pulls":
(https://github.com/bitcoin/bitcoin/pull/33303#issuecomment-3253428949)
> This appears to be an issue with GitHub itself rather than `actions/checkout@v5`, as the CI logs show it switching to a `refs/remotes/pull/<PR_NUMBEER>/merge` branch.

The `refs/remotes/...` is just the local name used by the checkout action. It does not reflect the stuff that was fetched, see my previous comment.
💬 maflcko commented on pull request "rpc: require integer verbosity; remove boolean 'verbose'":
(https://github.com/bitcoin/bitcoin/pull/33214#discussion_r2321934674)
why is this moved? should be a separate commit with rationale, or reverted?
💬 TheCharlatan commented on pull request "kernel: Introduce initial C header API":
(https://github.com/bitcoin/bitcoin/pull/30595#issuecomment-3253467866)
Updated e022142b52d8160abdee9a47e6ad7d493d521390 -> 82c503641a3a848234bba5c9979b9c4df5e53ea7 ([kernelApi_61](https://github.com/TheCharlatan/bitcoin/tree/kernelApi_61) -> [kernelApi_62](https://github.com/TheCharlatan/bitcoin/tree/kernelApi_62), [compare](https://github.com/TheCharlatan/bitcoin/compare/kernelApi_61..kernelApi_62))

* Lock cs_main when manipulating the logging objects to ensure they are thread-safe
* Ran clang-format
💬 Crypt-iQ commented on pull request "net: check for empty header before calling FillBlock":
(https://github.com/bitcoin/bitcoin/pull/33296#discussion_r2321960953)
@instagibbs suggested this as well. I looked into it and the main issue is that it allows a peer to stall block download:
1. malicious peer sends compact block, reconstruction is required
2. malicious peer sends blocktxn and reconstruction fails, fallback to regular block request with this peer (and wiping `partialBlock`)
3. malicious peer goes back to step 1. This does not work in current master because of this [else statement](https://github.com/bitcoin/bitcoin/blob/2562fe1b2b63c3a510735ba4
...
💬 maflcko commented on issue "Revisiting us self-hosting parts of our CI":
(https://github.com/bitcoin/bitcoin/issues/31965#issuecomment-3253515372)
Created https://github.com/maflcko/DrahtBot/issues/59, because I don't know how to fetch the pull request number from a check suite or check run.
💬 hebasto commented on pull request "ci: Checkout latest merged pulls":
(https://github.com/bitcoin/bitcoin/pull/33303#issuecomment-3253540953)
> The issue is that the action does not use the ref, but the commit to fetch: https://github.com/actions/checkout/blob/ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493/src/ref-helper.ts#L96
>
> You can also see this here: https://github.com/bitcoin/bitcoin/actions/runs/17458152407/job/49579638898?pr=29641#step:3:59:
>
> ```
> /usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +ee059f57f059c7210da3a3f63ec433b29a35da0e:refs/remotes/pull/29641/merge
...
🤔 janb84 reviewed a pull request: "ci: Checkout latest merged pulls"
(https://github.com/bitcoin/bitcoin/pull/33303#pullrequestreview-3185092065)
ACK fa8f944eaa1955e4e2c376ce36f1b1cbb1897769

The example given in the PR description https://github.com/bitcoin/bitcoin/actions/runs/17458152407/job/49579638898?pr=29641#step:9:914 is a "re-run"

> Re-run workflows use the privileges of the actor who initially triggered the workflow, not the privileges of the actor who initiated the re-run. The workflow will also use the same GITHUB_SHA (commit SHA) and GITHUB_REF (git ref) of the original event that triggered the workflow run.

At a fir
...
📝 fanquake opened a pull request: "depends: strip when installing qt binaries"
(https://github.com/bitcoin/bitcoin/pull/33304)
Otherwise we end up with ~1.5GB of binaries (Linux) when `DEBUG=1`. This isn't great generally, but is worse in the CI, where disk may be limited (#33293).
👍 fanquake approved a pull request: "ci: Remove redundant RUN_UNIT_TESTS_SEQUENTIAL"
(https://github.com/bitcoin/bitcoin/pull/33136#pullrequestreview-3185106147)
ACK fae610d8581a1a0624b57fe0c2595c9695d677c8
💬 fanquake commented on issue "ci: GHA fallback centos task runs out of space":
(https://github.com/bitcoin/bitcoin/issues/33293#issuecomment-3253562126)
> Yes we can try to free up space. I'll take a look where the space is being used and see what we can free.

#33304 should free up ~1.5GB of disk usage, an take some pressure off caching generally.
🚀 fanquake merged a pull request: "ci: Remove redundant RUN_UNIT_TESTS_SEQUENTIAL"
(https://github.com/bitcoin/bitcoin/pull/33136)
💬 hebasto commented on pull request "ci: Checkout latest merged pulls":
(https://github.com/bitcoin/bitcoin/pull/33303#issuecomment-3253566957)
> The PR changes "re-run" default behaviour. Forcing it to use the new state instead of running the old state again.

I suggest making this clearer in the PR description.
💬 vasild commented on pull request "ci: detect outbound internet traffic generated while running tests":
(https://github.com/bitcoin/bitcoin/pull/31349#issuecomment-3253651928)
`f400e0bb82...9dcbf6ccde`: fix a new case of non-loopback traffic from `node_init_tests/init_test`.

This PR originally contained a few fixes of tests that generated network traffic + a CI change to catch such future cases in CI. Then the tests fixes were moved to https://github.com/bitcoin/bitcoin/pull/31646 and merged. Then the activity here waned.

Now there is a new case of network traffic generated by a test which went in `master` unnoticed. I have fixed that and included it here.

`9
...
💬 hodlinator commented on pull request "index: store per-block transaction locations for efficient lookups":
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-3253662102)
Waiting for indexing to complete, did a 1min perf dump:
<img width="1684" height="1177" alt="image" src="https://github.com/user-attachments/assets/b3da4ca7-57d1-4737-849a-f0ad1216f306" />

* 35.2% of the time is spent in the `CTransaction` constructor, eagerly computing hashes which `LocationsIndex` doesn't even use.
* 11.7% is spent in the `GetSerializeSize` calls inside `LocationsIndex::CustomAppend()`.

Would be nice for the `LocationsIndex` if hashes were lazily computed (avoided) and
...
💬 vasild commented on pull request "ipc: Handle unclean shutdowns better":
(https://github.com/bitcoin/bitcoin/pull/32345#discussion_r2322112177)
This ends up creating real sockets and generates non-loopback network traffic. Fixed in https://github.com/bitcoin/bitcoin/pull/31349 in commit 005b8ca02c `test: avoid non-loopback network traffic from node_init_tests/init_test`.
💬 m3dwards commented on pull request "ci: Migrate CI to hosted Cirrus Runners":
(https://github.com/bitcoin/bitcoin/pull/32989#discussion_r2322125897)
Runner size wasn't extensively tested for performance, your logic for going for smaller runners seems sound to me.
💬 TheCharlatan commented on pull request "(RFC) kernel: Replace leveldb-based BlockTreeDB with flat-file based store":
(https://github.com/bitcoin/bitcoin/pull/32427#issuecomment-3253719585)
Rebased d35ceaeb463bc836ac4fc4bd6dd4f387647f33fb -> daf0e9a3d45f42889fc5895fc580c73d060d2711 ([blocktreestore_4](https://github.com/TheCharlatan/bitcoin/tree/blocktreestore_4) -> [blocktreestore_5](https://github.com/TheCharlatan/bitcoin/tree/blocktreestore_5), [compare](https://github.com/TheCharlatan/bitcoin/compare/blocktreestore_4..blocktreestore_5))

* Fixed conflict with #33274
💬 m3dwards commented on pull request "CI: silent merge check":
(https://github.com/bitcoin/bitcoin/pull/33145#issuecomment-3253719746)
Currently working on an alternative approach of one job that loops through PRs, might close this PR in favour of the other one based on feedback.
💬 TheCharlatan commented on pull request "kernel: Separate UTXO set access from validation functions":
(https://github.com/bitcoin/bitcoin/pull/32317#issuecomment-3253741259)
Rebased 5537ac00983a9abd24689411b5d76058d7a02f1b -> b27be6cb18dde53863d83d2f2f61d4c92916257b ([spendblock_11](https://github.com/TheCharlatan/bitcoin/tree/spendblock_11) -> [spendblock_12](https://github.com/TheCharlatan/bitcoin/tree/spendblock_12), [compare](https://github.com/TheCharlatan/bitcoin/compare/spendblock_11..spendblock_12))
⚠️ fanquake opened an issue: "ci: single Windows cache takes up > 25% of total cache space"
(https://github.com/bitcoin/bitcoin/issues/33305)
See here https://github.com/bitcoin/bitcoin/actions/caches?query=sort%3Asize-desc:
```bash
win64-native-vcpkg-binary-d91a6ca2e3cf6a687ef72004b964264224a060b043eec2cf156395fb74cf67d7
# 2.6 GB cached yesterday
```

A single Windows vcpkg cache is 2.6GB. Our total cache storage limit is 10.0GB. It'd be good if a single Windows cache wasn't taking up 25% of our total allocated cache. Maybe the vcpkg build can be modified, to improve this.