Bitcoin Core Github
44 subscribers
121K links
Download Telegram
💬 TheCharlatan commented on pull request "p2p: Allow block downloads from peers without snapshot block after assumeutxo validation":
(https://github.com/bitcoin/bitcoin/pull/33604#issuecomment-3395334349)
Nice, Concept ACK.
💬 fanquake commented on pull request "p2p: Allow block downloads from peers without snapshot block after assumeutxo validation":
(https://github.com/bitcoin/bitcoin/pull/33604#issuecomment-3395336034)
cc @mzumsande
🤔 l0rinc requested changes to a pull request: "index: initial sync speedup, parallelize process"
(https://github.com/bitcoin/bitcoin/pull/26966#pullrequestreview-2965376357)
I started a detailed review of this PR and I'm enthusiastic about the concept - it addresses a real problem and the potential performance gains are significant. \
Strong Concept ACK!

However, I've encountered some concerns that make me hesitant to continue reviewing the current implementation in depth:
* The txindex parallelization appears to be broken (showing 3-13% slowdowns rather than speedups), and this went unnoticed for years
* The complexity of the changes makes thorough review very cha
...
💬 l0rinc commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2424838828)
based on my benchmarks on various platforms it seems this isn't speeding up txindex - was this measured by anyone?
💬 l0rinc commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2423291668)
nit: since it's strongly typed we don't need to include the type name in the variable anymore
💬 l0rinc commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2424805627)
I think it might be clearer if this commit came later in the series, after the groundwork is established. In my experience, it's often easier to review when the problem definition is presented before the solution.

As it stands, this commit introduces code whose purpose isn't immediately clear without reading ahead to future commits.

I'd like to echo the concern other reviewers raised about separating the thread pool from the script parallelization work. Since script parallelization is alr
...
💬 l0rinc commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2424874997)
3087bd1ef1e9f85bf6a0b7c24be650f77a6c030a

I'm finding this commit difficult to review in depth due to its complexity. Like before, I'm seeing the solution (out-of-order processing with task tracking and opportunistic post-processing) before experiencing the problem it solves.

Could we break this down into focused, trivial commits, where low-risk changes are separated from high-risk ones and where the commits tell a story, where the pain is experienced before we propose a solution.
💬 l0rinc commented on pull request "index: initial sync speedup, parallelize process":
(https://github.com/bitcoin/bitcoin/pull/26966#discussion_r2424865671)
It seems to me we can loosen the args and avoid string concat:
```suggestion
template <typename T>
void WaitFor(std::span<const std::future<T>> futures, std::string_view context)
{
for (size_t i = 0; i < futures.size(); ++i) {
if (futures[i].wait_for(TIMEOUT_SECS) != std::future_status::ready) {
throw std::runtime_error(strprintf("Timeout waiting for: %s, task index %d", context, i));
}
}
}
```
💬 stringintech commented on pull request "p2p: Allow block downloads from peers without snapshot block after assumeutxo validation":
(https://github.com/bitcoin/bitcoin/pull/33604#issuecomment-3395390753)
This change allows the snapshot chainstate to reorg to chains that don't include the snapshot block after validation completes (not sure yet if this is the only mechanism that would allow such reorgs), so we must not assume anywhere in the codebase that `SnapshotBase()` is always an ancestor of the active tip. I'll take a closer look to see if any such assumptions exist, but I thought this was worth noting here.
👍 TheCharlatan approved a pull request: "refactor: inline constant return values from `dbwrapper` write methods"
(https://github.com/bitcoin/bitcoin/pull/33042#pullrequestreview-3329597424)
ACK 743abbcbde9e5a2db489bca461c98df461eff7d0
⚠️ gmart7t2 opened an issue: "Remove remaining mention of datacarriersize being deprecated"
(https://github.com/bitcoin/bitcoin/issues/33605)
#33453 undeprecated the datacarrier settings, but https://github.com/bitcoin/bitcoin/blob/v30.0/src/qt/bitcoinstrings.cpp#L165 still says:

QT_TRANSLATE_NOOP("bitcoin-core", "Options '-datacarrier' or '-datacarriersize' are set but are marked as deprecated. They will be removed in a future version."),

Best to remove that too?
💬 l0rinc commented on issue "Remove remaining mention of datacarriersize being deprecated":
(https://github.com/bitcoin/bitcoin/issues/33605#issuecomment-3395500448)
this will be removed automatically
💬 ROLANDSIHOMBING1 commented on pull request "ipc: add bitcoin-mine test program":
(https://github.com/bitcoin/bitcoin/pull/30437#issuecomment-3395693550)
Who are you?
🤔 ROLANDSIHOMBING1 reviewed a pull request: "doc: bump the template macOS version"
(https://github.com/bitcoin/bitcoin/pull/33573#pullrequestreview-3329865013)
Create
💬 ROLANDSIHOMBING1 commented on pull request "doc: bump the template macOS version":
(https://github.com/bitcoin/bitcoin/pull/33573#discussion_r2425136569)
+ placeholder : e.g." MacOS 26.0 " or
"Ubuntu 26.05 LTS"
💬 pablomartin4btc commented on pull request "argsman, cli: GNU-style command-line option parsing (allows options after non-option arguments)":
(https://github.com/bitcoin/bitcoin/pull/33540#issuecomment-3395750632)
-<ins>_**Updates**_</ins>:
- Addressed @ryanofsky's feedback:
- `bitcoin-cli` accepts RPC arguments that begin with a `-` character;
- added a note in description about backwards compatibility;
- `bitcoin-cli` treat options after the RPC method name that begin with double dashes as RPC named parameters;
- Updated description accordingly;
- CentOS CI failure is unrelated (_"no space left on device"_ -> it seems #33293);
- Pending to fix Tidy CI failure (_"recursive call chain"_).
💬 pablomartin4btc commented on pull request "argsman, cli: GNU-style command-line option parsing (allows options after non-option arguments)":
(https://github.com/bitcoin/bitcoin/pull/33540#issuecomment-3395916912)
-<ins>_**Updates**_</ins>:
- Fixed previous Tidy CI failure (_"recursive call chain"_), but still working on a refactor of `ArgsManager::ProcessOptionKey`.
💬 maflcko commented on issue "Missing shell completions for the `bitcoin` command":
(https://github.com/bitcoin/bitcoin/issues/33603#issuecomment-3396040984)
See https://github.com/bitcoin/bitcoin/pull/33385?
📝 maflcko opened a pull request: "ci: Work around GitHub rate limit on raw curl usage"
(https://github.com/bitcoin/bitcoin/pull/33606)
maflcko closed a pull request: "refactor: Split multithreaded case out of CheckInputScripts"
(https://github.com/bitcoin/bitcoin/pull/32575)