Bitcoin Core Github
44 subscribers
121K links
Download Telegram
💬 pinheadmz commented on pull request "blockstorage: do not flush block to disk if it is already there":
(https://github.com/bitcoin/bitcoin/pull/27039#discussion_r1123341750)
What I learned is that windows/FAT systems have 2-second resolution but Linux/EXT4 etc have ms or ns resolution. I had a hard time determining the best method for testing when a file is flushed but I think you're right, using timestamps is just asking for intermittency. I think I wanted to avoid hashing files because it means opening the file while blockmanager might already have it open... but I think that's going to be the best way to test.
💬 furszy commented on pull request "wallet: group outputs only once, decouple it from Coin Selection":
(https://github.com/bitcoin/bitcoin/pull/25806#discussion_r1123363865)
yeah
💬 furszy commented on pull request "wallet: group outputs only once, decouple it from Coin Selection":
(https://github.com/bitcoin/bitcoin/pull/25806#discussion_r1123369441)
I mean, it would be slower but could also be created on-demand:
```c++
Groups OutputGroups::All()
{
Groups ret;
for (const auto& [type, groups_vec] : groups_by_type) {
ret.positive_group.insert(ret.positive_group.begin(), groups_vec.positive_group.begin(), groups_vec.positive_group.end());
ret.mixed_group.insert(ret.mixed_group.begin(), groups_vec.mixed_group.begin(), groups_vec.mixed_group.end());
}
return ret;
}
```
💬 pinheadmz commented on pull request "blockstorage: do not flush block to disk if it is already there":
(https://github.com/bitcoin/bitcoin/pull/27039#discussion_r1123380652)
ok trying another approach where we ALWAYS pause, to ensure incremental timestamps. But on windows we have to pause for 2 seconds. All other filesystems we only need to wait for 1 ms.
💬 pinheadmz commented on issue "Coin Controll for Unconfirmed Outputs":
(https://github.com/bitcoin/bitcoin/issues/27190#issuecomment-1452166921)
I didn't have any trouble spending 0-confirmation inputs using Bitcoin-Qt (on regtest) by enabling the coin selection options


![Screen Shot 2023-03-02 at 11 30 49 AM](https://user-images.githubusercontent.com/2084648/222491819-dca4b237-97df-4a9f-bbf3-62411d82e6b0.png)


![Screen Shot 2023-03-02 at 11 31 12 AM](https://user-images.githubusercontent.com/2084648/222491839-b49070e0-c67e-42a5-916f-05fefa3f2bd5.png)
💬 pablomartin4btc commented on pull request "Mask values on Transactions View":
(https://github.com/bitcoin-core/gui/pull/708#issuecomment-1452168761)
> After more thorough testing I found the following issue, I think this pre-opened windows should be hidden or closed.

Good catch! I'll give it a go... cheers.
💬 pinheadmz commented on pull request "blockstorage: do not flush block to disk if it is already there":
(https://github.com/bitcoin/bitcoin/pull/27039#issuecomment-1452172358)
force-push to b4ce309ef5f2bed5ed1f861305317a0dca3dc5f4:

- addressed all nits and review comments by @LarryRuane
- added 1ms delay in blockmanager test for all non-windows systems (cc: @mzumsande )
👋 pinheadmz's pull request is ready for review: "Support JSON-RPC 2.0 when requested by client"
(https://github.com/bitcoin/bitcoin/pull/27101)
💬 pinheadmz commented on pull request "blockstorage: do not flush block to disk if it is already there":
(https://github.com/bitcoin/bitcoin/pull/27039#issuecomment-1452190011)
> consider the suggestion for the unit test commit comment here: [#27039 (review)](https://github.com/bitcoin/bitcoin/pull/27039#pullrequestreview-1320666918) (I think you may have just missed it), but it's not important.

ah doh! I added a sentence to the PR description but if I rebase again I'll add to the actual commit
💬 MarcoFalke commented on issue "Coin Controll for Unconfirmed Outputs":
(https://github.com/bitcoin/bitcoin/issues/27190#issuecomment-1452194482)
I think the question is about untrusted inputs, not unconfirmed change
💬 pinheadmz commented on issue "Coin Controll for Unconfirmed Outputs":
(https://github.com/bitcoin/bitcoin/issues/27190#issuecomment-1452198267)
> I think the question is about untrusted inputs, not unconfirmed change

Aha, yes I see those inputs are not listed in the GUI, I can look in to adding this as a feature
💬 ryanofsky commented on pull request "refactor: Use move semantics instead of custom swap functions":
(https://github.com/bitcoin/bitcoin/pull/26749#discussion_r1123429117)
In commit "refactor: Use move semantics in `CCheckQueue::Add`" (bee19efe7d8f1d6c6e2be0eefa9745de2d42066d)

Previous code seems to be trying to boost performance by reusing the vector. Why is it changed here to not reuse the vector? Change seems orthogonal to the rest of the PR
💬 1440000bytes commented on issue "Coin Controll for Unconfirmed Outputs":
(https://github.com/bitcoin/bitcoin/issues/27190#issuecomment-1452222743)
> > I think the question is about untrusted inputs, not unconfirmed change
>
> Aha, yes I see those inputs are not listed in the GUI, I can look in to adding this as a feature

Its not considered safe and I doubt reviewers would ACK it
📝 mzumsande opened a pull request: "blockstorage: add an assert to avoid running oom with `-fastprune`"
(https://github.com/bitcoin/bitcoin/pull/27191)
The debug-only `-fastprune` option used in several tests is not always safe to use:
If a `-fastprune` node receives a block larger than the maximum blockfile size of `64kb` bad things happen: The while loop in `BlockManager::FindBlockPos` never terminates, and the node runs oom because memory for `m_blockfile_info` is allocated in each iteration of the loop.
The same would happen if a naive user used `-fastprune` on anything other than regtest (so this can be tested by syncing on signet for ex
...
💬 brunoerg commented on pull request "net, refactor: net_processing, add `ProcessCompactBlockTxns`":
(https://github.com/bitcoin/bitcoin/pull/26969#discussion_r1123507577)
why?
💬 brunoerg commented on pull request "net, refactor: net_processing, add `ProcessCompactBlockTxns`":
(https://github.com/bitcoin/bitcoin/pull/26969#discussion_r1123508210)
Done, thanks!
💬 brunoerg commented on pull request "net, refactor: net_processing, add `ProcessCompactBlockTxns`":
(https://github.com/bitcoin/bitcoin/pull/26969#issuecomment-1452277461)
Force-pushed addressing https://github.com/bitcoin/bitcoin/pull/26969#discussion_r1121638358 (@dergoegge)
💬 MarcoFalke commented on pull request "doc: Fixup remove 'omitted...' doc for rpc getrawtransaction when verbose is 2":
(https://github.com/bitcoin/bitcoin/pull/26968#issuecomment-1452284884)
up for grabs?
💬 dougEfresh commented on pull request "doc: Fixup remove 'omitted...' doc for rpc getrawtransaction when verbose is 2":
(https://github.com/bitcoin/bitcoin/pull/26968#issuecomment-1452308111)
>

> up for grabs?

@MarcoFalke on it. Just been super busy last few weeks.
👍 vincenzopalazzo approved a pull request: "guix: pass `--enable-initfini-array` to release GCC"
(https://github.com/bitcoin/bitcoin/pull/27153)
utACK https://github.com/bitcoin/bitcoin/pull/27153/commits/127c637cf0a80e0ea68a7c5aaa088e5ccc9d3d13
💬 LarryRuane commented on pull request "util: improve FindByte() performance":
(https://github.com/bitcoin/bitcoin/pull/19690#issuecomment-1452330358)
@john-moffett - Good idea to bring back the earlier commit (the condition branch instruction theory makes sense); I just restored (force-pushed) it as you suggested. On my x86 (ns/op, lower is better):

master: 307
previous version of this PR (08cf6a9ed812c122e9d47cccee09e03d8139764c): 135
current version (using std::find): 34