π¬ instagibbs commented on pull request "validation: docs and cleanups for MemPoolAccept coins views":
(https://github.com/bitcoin/bitcoin/pull/32973#issuecomment-3075769891)
in op and commit message: `test_mid_package_evaluation` doesn't exist, it's named `test_mid_package_eviction`
The bull case for keeping `test_mid_package_replacement` is that it involves an RBF, not a mempool overflow, right? The comment in that test seems slightly erroneous, mentioning `replaced_tx` needs to be at the bottom of the mempool, when I think it just has to be low feerate enough to be RBF'd?
(https://github.com/bitcoin/bitcoin/pull/32973#issuecomment-3075769891)
in op and commit message: `test_mid_package_evaluation` doesn't exist, it's named `test_mid_package_eviction`
The bull case for keeping `test_mid_package_replacement` is that it involves an RBF, not a mempool overflow, right? The comment in that test seems slightly erroneous, mentioning `replaced_tx` needs to be at the bottom of the mempool, when I think it just has to be low feerate enough to be RBF'd?
π¬ Rob1Ham commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#discussion_r2208741172)
When I evaluated why the test was failing, I noticed that changing the value for `NORMAL_FEE_FILTER` on its own was insufficient for making the test pass. Digging further into the mechanics on how the policy filters worked, and looking logs on my local version of the code this is what I found:
I made the change from `9170997` to `9936506` because, reducing minrelaytxfee halves min_fee_limit (500β50, [fees.cpp:1090](https://github.com/bitcoin/bitcoin/blob/184159e4f30c6846cd0324ee07b59e7f8121a
...
(https://github.com/bitcoin/bitcoin/pull/32959#discussion_r2208741172)
When I evaluated why the test was failing, I noticed that changing the value for `NORMAL_FEE_FILTER` on its own was insufficient for making the test pass. Digging further into the mechanics on how the policy filters worked, and looking logs on my local version of the code this is what I found:
I made the change from `9170997` to `9936506` because, reducing minrelaytxfee halves min_fee_limit (500β50, [fees.cpp:1090](https://github.com/bitcoin/bitcoin/blob/184159e4f30c6846cd0324ee07b59e7f8121a
...
π¬ BitcoinMechanic commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3075830452)
> @BitcoinMechanic:
>
> > > The most persuasive argument for this would be that miners have diverged from defaults
> >
> >
> > You continue to confuse cause and effect. Miners mine what gets relayed, not the reverse.
> > Default relay policy for Core essentially controls what ends up in the blockchain and what doesn't. It's pointless to keep pretending otherwise.
>
> Neither Bitcoin Core, nor Knots, not even [LibreRelay nodes](https://github.com/petertodd/bitcoin/blob/af41065cb2adb47
...
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3075830452)
> @BitcoinMechanic:
>
> > > The most persuasive argument for this would be that miners have diverged from defaults
> >
> >
> > You continue to confuse cause and effect. Miners mine what gets relayed, not the reverse.
> > Default relay policy for Core essentially controls what ends up in the blockchain and what doesn't. It's pointless to keep pretending otherwise.
>
> Neither Bitcoin Core, nor Knots, not even [LibreRelay nodes](https://github.com/petertodd/bitcoin/blob/af41065cb2adb47
...
π€ mzumsande reviewed a pull request: "validation: remove BLOCK_FAILED_CHILD"
(https://github.com/bitcoin/bitcoin/pull/32950#pullrequestreview-3022472981)
Concept ACK
(https://github.com/bitcoin/bitcoin/pull/32950#pullrequestreview-3022472981)
Concept ACK
π¬ fanquake commented on pull request "doc: add alpine build instructions":
(https://github.com/bitcoin/bitcoin/pull/32559#discussion_r2208795017)
> seems preferable to let this be pulled in as a dependency, or not, by cmake
Not sure? It's a dep for Qt, and some of its sub deps. Nothing to do with CMake.
(https://github.com/bitcoin/bitcoin/pull/32559#discussion_r2208795017)
> seems preferable to let this be pulled in as a dependency, or not, by cmake
Not sure? It's a dep for Qt, and some of its sub deps. Nothing to do with CMake.
π€ furszy reviewed a pull request: "doc: add note for watch-only wallet migration"
(https://github.com/bitcoin/bitcoin/pull/32866#pullrequestreview-3022558530)
ACK 9d25880bb720bc675a533098268b9e02f86e17ce
(https://github.com/bitcoin/bitcoin/pull/32866#pullrequestreview-3022558530)
ACK 9d25880bb720bc675a533098268b9e02f86e17ce
π€ furszy reviewed a pull request: "index: fix wrong assert of current_tip == m_best_block_index"
(https://github.com/bitcoin/bitcoin/pull/32878#pullrequestreview-3022570828)
> General question - should we remove the assert, or would it maybe be better to keep it, but commit the best block index before calling `Rewind()` in `Sync()`?
I'm not sure about this but.. if we go down that road, wouldn't it be simpler to just drop the `current_tip` arg and use `m_best_block_index` internally?
(https://github.com/bitcoin/bitcoin/pull/32878#pullrequestreview-3022570828)
> General question - should we remove the assert, or would it maybe be better to keep it, but commit the best block index before calling `Rewind()` in `Sync()`?
I'm not sure about this but.. if we go down that road, wouldn't it be simpler to just drop the `current_tip` arg and use `m_best_block_index` internally?
π¬ waketraindev commented on pull request "rpc: add optional peer_ids param to filter getpeerinfo":
(https://github.com/bitcoin/bitcoin/pull/32741#issuecomment-3076011613)
> I would do peer_id|peer_ids and accept both a single number (most common use) or an array (efficient).
Skipped type checking and added simple cases so `getpeerinfo 7` and `getpeerinfo '[1,2,3]'` should work
(https://github.com/bitcoin/bitcoin/pull/32741#issuecomment-3076011613)
> I would do peer_id|peer_ids and accept both a single number (most common use) or an array (efficient).
Skipped type checking and added simple cases so `getpeerinfo 7` and `getpeerinfo '[1,2,3]'` should work
π¬ kurapika007 commented on pull request "Reduce minrelaytxfee to 100 sats/kvB":
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3076029783)
> Reducing `DEFAULT_MIN_RELAY_TX_FEE` only makes sense to me in conjunction with reducing `DEFAULT_BLOCK_MIN_TX_FEE`. Otherwise nodes become subject to free relay attacks that could be used to waste bandwidth across the network with transactions that are not even in danger of getting mined in most blocks.
>
> > `DEFAULT_INCREMENTAL_RELAY_FEE` should be decreased along with this as well.
>
> Thatβs probably a bad idea, as it would increase the surface for bandwidth wasting attacks 10Γ even
...
(https://github.com/bitcoin/bitcoin/pull/32959#issuecomment-3076029783)
> Reducing `DEFAULT_MIN_RELAY_TX_FEE` only makes sense to me in conjunction with reducing `DEFAULT_BLOCK_MIN_TX_FEE`. Otherwise nodes become subject to free relay attacks that could be used to waste bandwidth across the network with transactions that are not even in danger of getting mined in most blocks.
>
> > `DEFAULT_INCREMENTAL_RELAY_FEE` should be decreased along with this as well.
>
> Thatβs probably a bad idea, as it would increase the surface for bandwidth wasting attacks 10Γ even
...
π¬ PJJacobowitz commented on issue "ARM Windows build and release":
(https://github.com/bitcoin/bitcoin/issues/31388#issuecomment-3076030848)
Thank you @maflcko . Would you know how to get this into the mainline and then publish it so Windows on ARM users can download it via the link below?
https://bitcoin.org/en/download
(https://github.com/bitcoin/bitcoin/issues/31388#issuecomment-3076030848)
Thank you @maflcko . Would you know how to get this into the mainline and then publish it so Windows on ARM users can download it via the link below?
https://bitcoin.org/en/download
π stickies-v opened a pull request: "rpc: refactor: use string_view in Arg/MaybeArg"
(https://github.com/bitcoin/bitcoin/pull/32983)
The `RPCHelpMan::{Arg,MaybeArg}` helpers avoid copying (potentially) large strings by returning them as `const std::string*` (`MaybeArg`) or `const std::string&` (`Arg`). For `MaybeArg`, this has the not-so-nice effect that users need to deal with raw pointers, potentially also requiring new functions (e.g. [`EnsureUniqueWalletName` ](https://github.com/bitcoin/bitcoin/pull/32845/commits/d127b25199118756122232d9aafff19f1922869b#diff-d8bfcfbdd5fa7d5c52d38c1fe5eeac9ce5c5a794cdfaf683585140fa70a3237
...
(https://github.com/bitcoin/bitcoin/pull/32983)
The `RPCHelpMan::{Arg,MaybeArg}` helpers avoid copying (potentially) large strings by returning them as `const std::string*` (`MaybeArg`) or `const std::string&` (`Arg`). For `MaybeArg`, this has the not-so-nice effect that users need to deal with raw pointers, potentially also requiring new functions (e.g. [`EnsureUniqueWalletName` ](https://github.com/bitcoin/bitcoin/pull/32845/commits/d127b25199118756122232d9aafff19f1922869b#diff-d8bfcfbdd5fa7d5c52d38c1fe5eeac9ce5c5a794cdfaf683585140fa70a3237
...
π achow101 opened a pull request: "wallet: Set migrated wallet name only on success"
(https://github.com/bitcoin/bitcoin/pull/32984)
After a wallet is migrated and we are trying to load it, if it could not be loaded, don't try to set the wallet name. Otherwise we have a segfault.
This can be tested by migrated a legacy wallet from another network (e.g. trying to migrate a testnet wallet on mainnet). The fixed behavior is return an error and restore the backup.
I was unable to write a working functional test for this behavior.
(https://github.com/bitcoin/bitcoin/pull/32984)
After a wallet is migrated and we are trying to load it, if it could not be loaded, don't try to set the wallet name. Otherwise we have a segfault.
This can be tested by migrated a legacy wallet from another network (e.g. trying to migrate a testnet wallet on mainnet). The fixed behavior is return an error and restore the backup.
I was unable to write a working functional test for this behavior.
π achow101 opened a pull request: "wallet: Always rewrite tx records during migration"
(https://github.com/bitcoin/bitcoin/pull/32985)
Since loading a wallet may change some parts of tx records (e.g. adding nOrderPos), we should rewrite the records instead of copying them so that the automatic upgrade does not need to be performed again when the wallet is loaded.
This is useful for future PRs I'm working on where we can be sure about what data exists in a tx record in descriptor wallets.
(https://github.com/bitcoin/bitcoin/pull/32985)
Since loading a wallet may change some parts of tx records (e.g. adding nOrderPos), we should rewrite the records instead of copying them so that the automatic upgrade does not need to be performed again when the wallet is loaded.
This is useful for future PRs I'm working on where we can be sure about what data exists in a tx record in descriptor wallets.
π€ l0rinc reviewed a pull request: "[IBD] multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022449462)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022449462)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
π¬ l0rinc commented on pull request "[IBD] multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208775351)
Thanks, moved
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208775351)
Thanks, moved
π¬ l0rinc commented on pull request "[IBD] multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208831588)
I have extracted it to a new commit at the beginning which hard-codes the size and uses is throughout the codebase, so we get to delete `OBFUSCATION_SIZE_BYTES` early, so the rename scripted diff doen't need it anymore.
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208831588)
I have extracted it to a new commit at the beginning which hard-codes the size and uses is throughout the codebase, so we get to delete `OBFUSCATION_SIZE_BYTES` early, so the rename scripted diff doen't need it anymore.
π¬ l0rinc commented on pull request "[IBD] multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208857562)
> I still don't understand why the same line is changed/renamed several times
Because they usually reflect the name that I found to best describe their role in the current commit.
I have changed these to reflect the final state instead so we shouldn't have back-and-forth renames anymore (remaining ones are are deliberate, e.g. we need both the underlying bytes and the `Obfuscation` object).
> let the very first commit be [...] class Obfuscation [...] and then use that from the beginning
...
(https://github.com/bitcoin/bitcoin/pull/31144#discussion_r2208857562)
> I still don't understand why the same line is changed/renamed several times
Because they usually reflect the name that I found to best describe their role in the current commit.
I have changed these to reflect the final state instead so we shouldn't have back-and-forth renames anymore (remaining ones are are deliberate, e.g. we need both the underlying bytes and the `Obfuscation` object).
> let the very first commit be [...] class Obfuscation [...] and then use that from the beginning
...
π€ l0rinc reviewed a pull request: "[IBD] multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666436)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666436)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
π€ l0rinc reviewed a pull request: "[IBD] multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666508)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666508)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
π€ l0rinc reviewed a pull request: "[IBD] multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666542)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.
(https://github.com/bitcoin/bitcoin/pull/31144#pullrequestreview-3022666542)
Thanks for the comments, [addressed them](https://github.com/bitcoin/bitcoin/compare/26e998986af5fcdb235d1551172f1062bf30309a..4a67b26aeda4dc98fc008091743a7cc3bf6ec013) + rebased in a separate push.