Bitcoin Core Github
44 subscribers
120K links
Download Telegram
💬 maflcko commented on issue "Intermittent test failure in p2p_v2_transport":
(https://github.com/bitcoin/bitcoin/issues/29002#issuecomment-1841702298)
It seems easier to add another `self.wait_until`.

Generally, I am not a fan of using `assert_debug_log`, because this may cause races such as this, and uses the debug log via polling to sync the test execution implicitly.

Adding an explicit wait on what should happen (disconnect) seems better than extracting a "magic" string from the debug log in a loop.
🤔 pablomartin4btc reviewed a pull request: "build: Introduce internal kernel library"
(https://github.com/bitcoin/bitcoin/pull/28690#pullrequestreview-1766232622)
Concept ACK

I'd recommend reading Review Club [notes](https://bitcoincore.reviews/28690) from @stickies-v (thanks!) since those are great, well structured and very useful in order to have a wider context of most of the changes involved.
💬 TheCharlatan commented on pull request "[refactor] Check CTxMemPool options in ctor":
(https://github.com/bitcoin/bitcoin/pull/28830#issuecomment-1841742823)
Rebased 29818f5f839bb0a08980da6f6dbb980ef7754652 -> 1d18cc6cb30a875c4b6bea946a8c19d42e76dbcf ([mempoolArgs_0](https://github.com/TheCharlatan/bitcoin/tree/mempoolArgs_0) -> [mempoolArgs_1](https://github.com/TheCharlatan/bitcoin/tree/mempoolArgs_1), [compare](https://github.com/TheCharlatan/bitcoin/compare/mempoolArgs_0..mempoolArgs_1))

Updated 1d18cc6cb30a875c4b6bea946a8c19d42e76dbcf -> 3aa41a31690da2ae22b6a15a9a5de0de78a01757 ([mempoolArgs_1](https://github.com/TheCharlatan/bitcoin/tree/me
...
💬 TheCharlatan commented on pull request "[refactor] Check CTxMemPool options in ctor":
(https://github.com/bitcoin/bitcoin/pull/28830#discussion_r1416362699)
Uff, embarassing.
💬 theStack commented on issue "Intermittent test failure in p2p_v2_transport":
(https://github.com/bitcoin/bitcoin/issues/29002#issuecomment-1841751140)
I agree, but using `assert_debug_log` was not planned to be used for a potential solution anyway (note that parsing the log is not mentioned anywhere in my previous post). I would still use the `getpeerinfo()` RPC, but not look at the length, but wait for an increase of the highest peer id instead. At least that's the current plan, happy to take suggestions.

Regarding the interface, I think a context-manager method would make sense here, e.g.:
```
with self.nodes[0].wait_for_new_peer():

...
💬 theStack commented on pull request "rpc: fix getrawtransaction segfault":
(https://github.com/bitcoin/bitcoin/pull/29003#issuecomment-1841774604)
Concept ACK
💬 ryanofsky commented on pull request "build: Introduce internal kernel library":
(https://github.com/bitcoin/bitcoin/pull/28690#discussion_r1416392404)
In commit "build: Prepare libbitcoin_util for internal kernel library" (8b3623769e1307c122959fbdc8c4c93ddd81d5c9)

It seems like a bug to have a util header depending on a common header. I think I'd suggest splitting up the spanparsing header and renaming it, since right now it is not very focused. Would suggest moving the spanparsing Split function to `src/util/string.h` where it is being used, and probably moving the rest of the functions to `src/script/parsing.h` since they are only used fo
...
💬 achow101 commented on pull request "wallet: Have the wallet store the key for automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/26728#discussion_r1416405430)
It was previously needed in a later commit when xpubs with private keys were being written, but it is no longer needed. I've ended up dropping this commit from this PR.
💬 achow101 commented on pull request "wallet: Have the wallet store the key for automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/26728#discussion_r1416405890)
Changed to `if(!Assume...`
💬 achow101 commented on pull request "wallet: Have the wallet store the key for automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/26728#discussion_r1416405961)
Done
💬 achow101 commented on pull request "wallet: Have the wallet store the key for automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/26728#discussion_r1416406078)
Done
💬 achow101 commented on pull request "wallet: Have the wallet store the key for automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/26728#discussion_r1416406114)
Done
📝 theStack opened a pull request: "test: fix v2 transport intermittent test failure (#29002)"
(https://github.com/bitcoin/bitcoin/pull/29006)
This PR improves the following fragile construct for detection of a new connection to the node under test in `p2p_v2_transport.py`:
https://github.com/bitcoin/bitcoin/blob/6d5790956f45e3de5c6c4ee6fda21878b0d1287b/test/functional/p2p_v2_transport.py#L154-L156
Only relying on the number of peers for that suffers from race conditions, as unrelated previous peers could disconnect at anytime in-between. In the test run in #29002, the following happens:

- `getpeerinfo()` is called the first time
...
🤔 pablomartin4btc reviewed a pull request: "test: Fix test by checking the actual exception instance"
(https://github.com/bitcoin/bitcoin/pull/28989#pullrequestreview-1766346784)
ACK 55e3dc3e03510e97caba1547a82e3e022b0bbd42
💬 Farnoosh85 commented on issue "test: BDB wallets":
(https://github.com/bitcoin/bitcoin/issues/28606#issuecomment-1841874793)
> I wonder what the best way is to test BDB wallets, which can still be loaded.
>
>
>
> The current status seems to be that each test is run twice, once with a BDB backend, and once with an sqlite backend. However, this will be harder, once BDB creation is removed. So I wonder what should be done:
>
>
>
> 0) Remove coverage for loading and testing with a BDB backend, except for the previous-releases test
>
> 0) Create BDB wallets with a previous release, if available
>
> 0) Everything fr
...
👍 theStack approved a pull request: "rpc: fix getrawtransaction segfault"
(https://github.com/bitcoin/bitcoin/pull/29003#pullrequestreview-1766476361)
Tested ACK 9075a446461ccbc446d21af778aac50b604f39b3

Reproduced the crash on master with my pruned node manually via
```
$ ./src/bitcoin-cli getrawmempool | head -n 2
[
"sometxid...",
$ ./src/bitcoin-cli getrawtransaction sometxid... 2
error: timeout on transient error: Could not connect to the server 127.0.0.1:8332 (error code 1 - "EOF reached")

Make sure the bitcoind server is running and that you are connecting to the correct RPC port.

-----
bitcoind crashes with "Segmentat
...
📝 stratospher opened a pull request: "test: create deterministic addrman in the functional tests"
(https://github.com/bitcoin/bitcoin/pull/29007)
Testing addrman functionality is limited in the functional tests because `nKey` for the addrman is chosen randomly during every run and there's a small chance for collision when inserting a new address into the addrman. Currently in our tests, we keep only 1 address in the new table, 1 address in the tried table and don't insert new addresses into the addrman because of these possible collisions. See https://github.com/bitcoin/bitcoin/pull/26988#discussion_r1091145647, https://github.com/bitcoin
...
💬 Brock124590 commented on pull request "rpc: fix getrawtransaction segfault":
(https://github.com/bitcoin/bitcoin/pull/29003#discussion_r1416601435)
Do you have your secret phrase
💬 kevkevinpal commented on pull request "test: fix v2 transport intermittent test failure (#29002)":
(https://github.com/bitcoin/bitcoin/pull/29006#issuecomment-1842092254)
Concept ACK [00e0658](https://github.com/bitcoin/bitcoin/pull/29006/commits/00e0658e77f66103ebdeb29def99dc9f937c049d)