Bitcoin Core Github
44 subscribers
120K links
Download Telegram
💬 brunoerg commented on pull request "p2p: Allow whitelisting outgoing connections":
(https://github.com/bitcoin/bitcoin/pull/27114#issuecomment-1879176485)
Pushed to fix CI.
💬 sr-gi commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1443312604)
> not super clear why we won't do this if full_outbound_delta > 0?

> Which raises the question whether there should be any interaction?

I think this would create a weird interaction. The current approach of this PR is trying to make the 8 full-outbound connections relay transactions, given we already have blocks-only connections, so we should not waste full-outbound slots for this purpose. However, our full-outbound connection protection criteria is based on whether they have provided vali
...
💬 luke-jr commented on pull request "p2p: Allow whitelisting outgoing connections":
(https://github.com/bitcoin/bitcoin/pull/27114#issuecomment-1879183816)
>`git range-diff bitcoin-core/master a b` does not care about rebases, see the docs in this repo.

It's also painful to review. If there's no benefit to a rebase, better to just avoid it.
📝 sipa opened a pull request: "Weaken serfloat tests"
(https://github.com/bitcoin/bitcoin/pull/29192)
Closes #28941.

Our current tests for serfloat verify to distinct things:
* Whether they roundtrip `double`->`uint64_t`->`double` (excluding NaN values) on all systems.
* Whether on systems with a typical floating point unit that encoding matches the hardware representation, as before v22.0, we would dump the hardware representation directly to disk and we wanted to retain compatibility with that.

#28941 seems to show that the second property doesn't always hold, but just for "subnormal"
...
👍 jamesob approved a pull request: "fuzz: a target for the block index database"
(https://github.com/bitcoin/bitcoin/pull/28209#pullrequestreview-1806749752)
ACK 8083aa21a699cb240a11741be8ba5cfeeb58ee8b ([`jamesob/ackr/28209.1.darosior.fuzz_a_target_for_the_bl`](https://github.com/jamesob/bitcoin/tree/ackr/28209.1.darosior.fuzz_a_target_for_the_bl))

Ran the test locally and read over the change. This is a good basic test to have in place; seems like a low-risk merge.

<details><summary>Show signature data</summary>
<p>

```
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

ACK 8083aa21a699cb240a11741be8ba5cfeeb58ee8b ([`jamesob/ackr/28209.
...
💬 jamesob commented on pull request "fuzz: a target for the block index database":
(https://github.com/bitcoin/bitcoin/pull/28209#discussion_r1443317367)
Good suggestion, but could be done in a follow-up I guess.
💬 sipa commented on issue "brew: serfloat_tests tests fail on Linux":
(https://github.com/bitcoin/bitcoin/issues/28941#issuecomment-1879199378)
Can someone try if #29192 addresses this problem?
💬 maflcko commented on pull request "Weaken serfloat tests":
(https://github.com/bitcoin/bitcoin/pull/29192#discussion_r1443325481)
side-note: This should always be true, according to the static_assert:

```
src/compat/assumptions.h:static_assert(std::numeric_limits<float>::is_iec559, "IEEE 754 float assumed");
src/compat/assumptions.h:static_assert(std::numeric_limits<double>::is_iec559, "IEEE 754 double assumed");
💬 fanquake commented on issue "brew: serfloat_tests tests fail on Linux":
(https://github.com/bitcoin/bitcoin/issues/28941#issuecomment-1879205868)
I'll push that branch into my downstream PR.
💬 andrewtoth commented on pull request "rpc,rest,zmq: faster getblock, NotifyBlock and rest_block by reading raw block":
(https://github.com/bitcoin/bitcoin/pull/26415#discussion_r1443331819)
Rebased
💬 sipa commented on pull request "Weaken serfloat tests":
(https://github.com/bitcoin/bitcoin/pull/29192#discussion_r1443334583)
Fair enough. The check doesn't hurt though, and perhaps functions as documentation to clarify the conditions due to which these tests are possible?
💬 mzumsande commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1443336121)
Yes, I agree - I think that there are colliding goals, my thinking is as follows:
1) The `m_protect` protection attempts to prevent pathological situations where we wouldn't have peers with the honest chain (that shouldn't happen normally even without the protection, but would be very serious if they did)
2) The network-specific protection aims to be connected to all networks we support, to help the interconnection, and also to reduce the risk of eclipse attacks. Ideally, that means relaying b
...
💬 mzumsande commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1443337020)
I tried it, but it turned out to be annoying because in the test we simulate being at the full outbound limit by artificially running with a lower `-maxconnections`. If we now also add an unrelated peer like ADDRFETCH , it would make the test fail because we don't have enough slots in `semOutbound`.
💬 mzumsande commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1443337547)
done, thanks - I had missed this!
💬 mzumsande commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1443338184)
I think I'd prefer to not do it here, for my taste it's not related enough to the core of this PR.
💬 maflcko commented on pull request "Weaken serfloat tests":
(https://github.com/bitcoin/bitcoin/pull/29192#discussion_r1443338498)
Sure, no need to change anything.
💬 maflcko commented on pull request "Weaken serfloat tests":
(https://github.com/bitcoin/bitcoin/pull/29192#issuecomment-1879217380)
I think the fuzz tests are also checking the exact hardware representation? So they should be failing as well, but I guess no one is running them through homebrew (or whatever the affected system is).
💬 mzumsande commented on pull request "p2p: attempt to fill full outbound connection slots with peers that support tx relay":
(https://github.com/bitcoin/bitcoin/pull/28538#issuecomment-1879217526)
Updated to address feedback, I would love to hear more opinions on the protection issue discussed in the threat following https://github.com/bitcoin/bitcoin/pull/28538#discussion_r1429773492
💬 sipa commented on pull request "Weaken serfloat tests":
(https://github.com/bitcoin/bitcoin/pull/29192#issuecomment-1879221008)
@maflcko I don't think they are affecteded, as the fuzz tests always start from a double (even if one obtained by decoding raw memory) and test roundtripping of that. The issue only seems to appear when starting from raw memory, then encoding + decoding, and comparing with the raw memory started with.
💬 jonatack commented on pull request "Avoid returning references to mutex guarded members":
(https://github.com/bitcoin/bitcoin/pull/28774#issuecomment-1879232002)
> > Let me know if I should drop it and you prefer to keep it here
>
> It is ok. I don't have a preference whether it gets merged via #29040 of via this PR. Just that it makes it to `master` ;-) Thanks!

Need rebase, following merge of first commit cba94d151757a4e69b6eb684ae09bc6a4ea530d5 in #29040?