💬 maflcko commented on pull request "restrict std::cerr to errors; use std::cout for warnings and info":
(https://github.com/bitcoin/bitcoin/pull/32538#issuecomment-2888128803)
> > When something literally starts with Warning: ..., I fail to see how it can be misinterpreted.
>
> It is actually being misinterpreted by our own test framework. The framework does not look at the stderr content, it only checks whether there is something inside stderr or not during shutdown, failing when finds something there.
That's intentional. We want the tests to fail when there is any warning or error (from Bitcoin Core or any other tool/sanitizer/lib) that is not accounted for, s
...
(https://github.com/bitcoin/bitcoin/pull/32538#issuecomment-2888128803)
> > When something literally starts with Warning: ..., I fail to see how it can be misinterpreted.
>
> It is actually being misinterpreted by our own test framework. The framework does not look at the stderr content, it only checks whether there is something inside stderr or not during shutdown, failing when finds something there.
That's intentional. We want the tests to fail when there is any warning or error (from Bitcoin Core or any other tool/sanitizer/lib) that is not accounted for, s
...
📝 romanz opened a pull request: "rest: fetch spent transaction outputs by blockhash"
(https://github.com/bitcoin/bitcoin/pull/32540)
Today, it is possible to fetch a block's spent prevouts in order to build an external index by using the `/rest/block/HASH.json` endpoint. However, its performance is low due to JSON serialization overhead.
We can significantly optimize it by adding a new REST endpoint, using a binary response format:
```
$ ab -k -c 1 -n 100 http://localhost:8332/rest/block/00000000000000000002a7c4c1e48d76c5a37902165a270156b7a8d72728a054.json
Document Length: 1634536 bytes
Requests per second:
...
(https://github.com/bitcoin/bitcoin/pull/32540)
Today, it is possible to fetch a block's spent prevouts in order to build an external index by using the `/rest/block/HASH.json` endpoint. However, its performance is low due to JSON serialization overhead.
We can significantly optimize it by adding a new REST endpoint, using a binary response format:
```
$ ab -k -c 1 -n 100 http://localhost:8332/rest/block/00000000000000000002a7c4c1e48d76c5a37902165a270156b7a8d72728a054.json
Document Length: 1634536 bytes
Requests per second:
...
📝 romanz opened a pull request: "index: store per-block transaction locations for efficient lookups"
(https://github.com/bitcoin/bitcoin/pull/32541)
Currently, electrs and other indexers are used to maintain a map between an address/scripthash to the list of the relevant transactions.
However, in order to fetch those transactions from bitcoind, electrs relies on reading the whole block and post-filtering for a specific transaction [1]. Other indexers use a `txindex` to fetch a transaction using its txid [2,3,4].
The above approach has significant storage and CPU overhead, since the `txid` is a pseudo-random 32-byte value.
This PR is
...
(https://github.com/bitcoin/bitcoin/pull/32541)
Currently, electrs and other indexers are used to maintain a map between an address/scripthash to the list of the relevant transactions.
However, in order to fetch those transactions from bitcoind, electrs relies on reading the whole block and post-filtering for a specific transaction [1]. Other indexers use a `txindex` to fetch a transaction using its txid [2,3,4].
The above approach has significant storage and CPU overhead, since the `txid` is a pseudo-random 32-byte value.
This PR is
...
💬 maflcko commented on pull request "Remove legacy `Parse(U)Int*`":
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094035676)
thx, added a new commit on top with you as co-author
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094035676)
thx, added a new commit on top with you as co-author
💬 maflcko commented on pull request "Remove legacy `Parse(U)Int*`":
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094038039)
consensus rules aren't architecture or compiler-dependent, so I used uint32_t instead
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094038039)
consensus rules aren't architecture or compiler-dependent, so I used uint32_t instead
💬 maflcko commented on pull request "Remove legacy `Parse(U)Int*`":
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094039002)
(same)
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094039002)
(same)
💬 maflcko commented on pull request "Remove legacy `Parse(U)Int*`":
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094039205)
thx, added some fuzz
(https://github.com/bitcoin/bitcoin/pull/32520#discussion_r2094039205)
thx, added some fuzz
🤔 hebasto reviewed a pull request: "Update leveldb subtree to latest upstream"
(https://github.com/bitcoin/bitcoin/pull/32534#pullrequestreview-2848184300)
My Guix build:
```
aarch64
a12f2290f4e5267f2ba9ad9da0d95e7990ea3e5772d7658a133d607a25afe7b4 guix-build-7015052eba23/output/aarch64-linux-gnu/SHA256SUMS.part
6232c5017a17753b33c62f32def946a72f70ce63b76b55dc9a8fa8c8e75229fe guix-build-7015052eba23/output/aarch64-linux-gnu/bitcoin-7015052eba23-aarch64-linux-gnu-debug.tar.gz
c702cf46c5c463ccd08ec97f3858cf1a1ce612e0c92836f6dedc94d1f6ad16f3 guix-build-7015052eba23/output/aarch64-linux-gnu/bitcoin-7015052eba23-aarch64-linux-gnu.tar.gz
a0e2e6f5
...
(https://github.com/bitcoin/bitcoin/pull/32534#pullrequestreview-2848184300)
My Guix build:
```
aarch64
a12f2290f4e5267f2ba9ad9da0d95e7990ea3e5772d7658a133d607a25afe7b4 guix-build-7015052eba23/output/aarch64-linux-gnu/SHA256SUMS.part
6232c5017a17753b33c62f32def946a72f70ce63b76b55dc9a8fa8c8e75229fe guix-build-7015052eba23/output/aarch64-linux-gnu/bitcoin-7015052eba23-aarch64-linux-gnu-debug.tar.gz
c702cf46c5c463ccd08ec97f3858cf1a1ce612e0c92836f6dedc94d1f6ad16f3 guix-build-7015052eba23/output/aarch64-linux-gnu/bitcoin-7015052eba23-aarch64-linux-gnu.tar.gz
a0e2e6f5
...
👋 TheCharlatan's pull request is ready for review: "build: Introduce internal kernel library"
(https://github.com/bitcoin/bitcoin/pull/28690)
(https://github.com/bitcoin/bitcoin/pull/28690)
💬 TheCharlatan commented on pull request "build: Introduce internal kernel library":
(https://github.com/bitcoin/bitcoin/pull/28690#issuecomment-2888226479)
Undrafting this again after some recent discussions on splitting the kernel library out in the future.
(https://github.com/bitcoin/bitcoin/pull/28690#issuecomment-2888226479)
Undrafting this again after some recent discussions on splitting the kernel library out in the future.
👍 hebasto approved a pull request: "Update leveldb subtree to latest upstream"
(https://github.com/bitcoin/bitcoin/pull/32534#pullrequestreview-2848190649)
ACK 7015052eba23368539dcd1a9b4217ce1cacd2999, I've updated the `leveldb` subtree locally and got zero diff with this branch.
(https://github.com/bitcoin/bitcoin/pull/32534#pullrequestreview-2848190649)
ACK 7015052eba23368539dcd1a9b4217ce1cacd2999, I've updated the `leveldb` subtree locally and got zero diff with this branch.
🚀 hebasto merged a pull request: "Update leveldb subtree to latest upstream"
(https://github.com/bitcoin/bitcoin/pull/32534)
(https://github.com/bitcoin/bitcoin/pull/32534)
💬 maflcko commented on issue "intermittent issue in rpc_signer.py (enumeratesigners timeout)":
(https://github.com/bitcoin/bitcoin/issues/32524#issuecomment-2888230805)
I've created 50 runs and they all passed: https://cirrus-ci.com/task/5325312260571136 So I guess this is related. I'll try to get the gdb bt next.
(https://github.com/bitcoin/bitcoin/issues/32524#issuecomment-2888230805)
I've created 50 runs and they all passed: https://cirrus-ci.com/task/5325312260571136 So I guess this is related. I'll try to get the gdb bt next.
💬 maflcko commented on issue "intermittent issue in rpc_signer.py (enumeratesigners timeout)":
(https://github.com/bitcoin/bitcoin/issues/32524#issuecomment-2888234312)
In the meantime, I place my bet that this is a gcc-11 upstream bug 🤞
(https://github.com/bitcoin/bitcoin/issues/32524#issuecomment-2888234312)
In the meantime, I place my bet that this is a gcc-11 upstream bug 🤞
💬 Talej commented on pull request "doc: corrected lockunspent rpc quoting":
(https://github.com/bitcoin/bitcoin/pull/31275#issuecomment-2888238933)
> @Talej Can you rebase this?
All done!
(https://github.com/bitcoin/bitcoin/pull/31275#issuecomment-2888238933)
> @Talej Can you rebase this?
All done!
🚀 fanquake merged a pull request: "scripted-diff: Remove unused leading newline in RPC docs"
(https://github.com/bitcoin/bitcoin/pull/32514)
(https://github.com/bitcoin/bitcoin/pull/32514)
🚀 fanquake merged a pull request: "test: Remove legacy wallet RPC overloads"
(https://github.com/bitcoin/bitcoin/pull/32452)
(https://github.com/bitcoin/bitcoin/pull/32452)
💬 TheCharlatan commented on pull request "index: store per-block transaction locations for efficient lookups":
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-2888253440)
Concept ACK
Can you add the schema of the index and the expected arguments for the REST API to the pull request description? I was a bit confused at first if this now exposes the file position, but if I read it correctly now, this just allows querying a transaction by its index in the block.
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-2888253440)
Concept ACK
Can you add the schema of the index and the expected arguments for the REST API to the pull request description? I was a bit confused at first if this now exposes the file position, but if I read it correctly now, this just allows querying a transaction by its index in the block.
💬 TheCharlatan commented on pull request "blocks: avoid recomputing block header hash in `ReadBlock`":
(https://github.com/bitcoin/bitcoin/pull/32487#discussion_r2094072165)
Is there really a scenario where we could be reading a block, but not have its block index entry? Maybe this should just be an `Assume` instead.
(https://github.com/bitcoin/bitcoin/pull/32487#discussion_r2094072165)
Is there really a scenario where we could be reading a block, but not have its block index entry? Maybe this should just be an `Assume` instead.
💬 romanz commented on pull request "index: store per-block transaction locations for efficient lookups":
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-2888263760)
> Concept ACK
Thanks!
> Can you add the schema of the index and the expected arguments for the REST API to the pull request description?
Sure - updated in https://github.com/bitcoin/bitcoin/pull/32541#issue-3070502385.
(https://github.com/bitcoin/bitcoin/pull/32541#issuecomment-2888263760)
> Concept ACK
Thanks!
> Can you add the schema of the index and the expected arguments for the REST API to the pull request description?
Sure - updated in https://github.com/bitcoin/bitcoin/pull/32541#issue-3070502385.