Bitcoin Core Github
42 subscribers
126K links
Download Telegram
🚀 achow101 merged a pull request: "refactor: Clamp worker threads in ChainstateManager constructor"
(https://github.com/bitcoin/bitcoin/pull/31313)
🤔 hodlinator reviewed a pull request: "test: Prove+document ConstevalFormatString/tinyformat parity"
(https://github.com/bitcoin/bitcoin/pull/30933#pullrequestreview-2476944966)
So, I was a bit late reacting to the merge of #31174, but here we are - rebased and ready for review again.

Added a commit regarding non-parity of `"%n"` as suggested in https://github.com/bitcoin/bitcoin/pull/31174#issuecomment-2447224880.
💬 hodlinator commented on pull request "test: Prove+document ConstevalFormatString/tinyformat parity":
(https://github.com/bitcoin/bitcoin/pull/30933#discussion_r1868489198)
The known cases where I was using `PassFmtIncorrect` have now become valid `PassFmt` thanks to your #31174. `PassFmtIncorrect` is no more.
💬 hodlinator commented on pull request "test: Prove+document ConstevalFormatString/tinyformat parity":
(https://github.com/bitcoin/bitcoin/pull/30933#discussion_r1868488090)
Thanks! Ended up naming it **Tfm**FormatZeroes in latest push to highlight the tinyformat part being essential.
👋 hodlinator's pull request is ready for review: "test: Prove+document ConstevalFormatString/tinyformat parity"
(https://github.com/bitcoin/bitcoin/pull/30933)
💬 hodlinator commented on pull request "test: Prove+document ConstevalFormatString/tinyformat parity":
(https://github.com/bitcoin/bitcoin/pull/30933#discussion_r1868496986)
I prefer retaining negative tests to increase certainty and would rather not do the `PassFmt<1>("%s")` -> `PassFmt("%s", "test")` refactor in this PR if that's okay with you.
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads ~17% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#discussion_r1868551853)
We no longer need to block on the shared outpoints vector. We write to it once in the main thread before notifying the other threads and then only read from it afterwards.
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads ~17% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#discussion_r1868552609)
Done.
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads ~17% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#discussion_r1868552959)
This is the hardcoded batch size used in CheckQueue. Not sure why that was selected, but I deferred to previous choices.
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads ~17% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#discussion_r1868553486)
We're reading the previous outpoints of that block's inputs, which are in many other previous blocks. So, not sure this is feasible.
💬 andrewtoth commented on pull request "validation: fetch block inputs on parallel threads ~17% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31132#issuecomment-2515910524)
Rebased. Since #30039 reading inputs is much faster, so the effect of this is somewhat less significant. It's still a significant speedup though so still worth it. Especially for worst case where the cache is completely empty, like on startup or right after it gets flushed due to size.

It is also refactored significantly. The main thread now writes everything before notifying threads, and then joins in working. This lets us do significantly less work in the critical section and parallelize mo
...
💬 andrewtoth commented on pull request "validation: write chainstate to disk every hour":
(https://github.com/bitcoin/bitcoin/pull/30611#issuecomment-2515985691)
Rebased to test performance with #30039.
💬 andremralves commented on issue "Add `sat_to_btc()` and conversely `btc_to_sat()` util functions in functional tests":
(https://github.com/bitcoin/bitcoin/issues/31345#issuecomment-2516042652)
> Could I take the issue?

Hi @le0nAg. If you’d like, you can take this issue. There are still some updates to make, as noted in the PR comments. I’ll probably focus on another issue, so you could fork my branch and continue the work in a new PR.
💬 ryanofsky commented on pull request "Multiprocess bitcoin":
(https://github.com/bitcoin/bitcoin/pull/10102#issuecomment-2516059562)
re: https://github.com/bitcoin/bitcoin/pull/10102#issuecomment-2515554249

> Not sure if it's worth sharing here but hey what's an 1300th comment.

Thanks for the report! Was able to reproduce this and created issue https://github.com/chaincodelabs/libmultiprocess/issues/123 to track it.
💬 Bambibrown commented on pull request "Fee Estimation: Ignore all transactions that are CPFP'd":
(https://github.com/bitcoin/bitcoin/pull/30079#discussion_r1868688590)
```suggestion
const auto ### _**sequences{miniminer_manual.Linearize().inclusion_order};**_
```
💬 Sjors commented on pull request "Add waitNext() to BlockTemplate interface":
(https://github.com/bitcoin/bitcoin/pull/31283#issuecomment-2516244533)
Rebased after #31112.
💬 Sjors commented on pull request "Drop script_pub_key arg from createNewBlock":
(https://github.com/bitcoin/bitcoin/pull/31318#issuecomment-2516248571)
Rebased after https://github.com/bitcoin/bitcoin/pull/31112.
💬 le0nAg commented on issue "Add `sat_to_btc()` and conversely `btc_to_sat()` util functions in functional tests":
(https://github.com/bitcoin/bitcoin/issues/31345#issuecomment-2516322672)
Ok, thanks! I took yesterday and today to understand at which point is the PR.
Tomorrow I will fork it
👍 maflcko approved a pull request: "test: Prove+document ConstevalFormatString/tinyformat parity"
(https://github.com/bitcoin/bitcoin/pull/30933#pullrequestreview-2477481144)
lgtm, but it would be better to merge the conflicting non-draft pull with two acks first. This will also avoid having to touch some lines twice, which are touched here.
💬 maflcko commented on pull request "qa: Fix `wallet_multiwallet.py`":
(https://github.com/bitcoin/bitcoin/pull/31410#discussion_r1868849318)
Could do a third listwalletdir without the symlink to check that the test is working by checking for absence of `error scanning`?