Skip to content

Commit ecf3eee

Browse files
LarryRuanebitschmidty
authored andcommitted
News255: add review club summary n27600
1 parent b88e597 commit ecf3eee

File tree

1 file changed

+50
-4
lines changed

1 file changed

+50
-4
lines changed

_posts/en/newsletters/2023-06-14-newsletter.md

Lines changed: 50 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,57 @@ how wallets can use that policy most effectively._
8282
meeting, highlighting some of the important questions and answers. Click on a
8383
question below to see a summary of the answer from the meeting.*
8484

85-
FIXME:LarryRuane
85+
[Allow inbound whitebind connections to more aggressively evict peers when slots are full][review club 27600]
86+
is a PR by Matthew Zipkin (pinheadmz) that improves a node operator's
87+
ability in certain cases to configure desired peers for the node.
88+
Specifically, if the node operator has whitelisted a potential inbound
89+
peer (for example, a light client controlled by the node operator), then
90+
without this PR, and depending on the node's peer state, it's possible
91+
that the node will deny this light client's connection attempt.
92+
93+
This PR makes it much more likely that the desired peer will be able to
94+
connect to our node. It does this by evicting an existing inbound peer
95+
that, without this PR, would have been ineligible for eviction.
8696

8797
{% include functions/details-list.md
88-
q0="FIXME"
89-
a0="FIXME"
90-
a0link="https://bitcoincore.reviews/27501#l-FIXME"
98+
q0="Why does this PR only apply to inbound peer requests?"
99+
a0="Our node _initiates_ outbound connections; this PR modifies how
100+
the node _reacts_ to an incoming connection request.
101+
Outbound nodes can be evicted, but that's done with an entirely
102+
separate algorithm."
103+
a0link="https://bitcoincore.reviews/27600#l-33"
104+
105+
q1="What is the impact of the `force` parameter of `SelectNodeToEvict()`
106+
on the return value?"
107+
a1="Specifying `force` as `true` ensures that a non-`noban` inbound peer
108+
is returned, if one exists, even if it would otherwise be protected
109+
from eviction.
110+
Without the PR, it would not return a peer if they all are excluded
111+
(protected) from eviction."
112+
a1link="https://bitcoincore.reviews/27600#l-70"
113+
114+
q2="How is the function signature of `EraseLastKElements()` changed in this PR?"
115+
a2="It changed from being a `void` return function to returning the last
116+
entry that was _removed_ from the eviction candidates list. (This
117+
\"protected\" node might be evicted if necessary.)
118+
However, as a result of discussion during the review club meeting,
119+
the PR was later simplified such that this function is no longer modified."
120+
a2link="https://bitcoincore.reviews/27600#l-126"
121+
122+
q3="`EraseLastKElements` used to be a templated function, but this PR removes
123+
the two template arguments. Why? Are there any downsides to this change?"
124+
a3="This function was and (with this PR) is being called with unique template
125+
arguments, so there is no need for the function to be templated.
126+
The PR's changes to this function were reverted, so it's still templated,
127+
because changing this would be beyond the scope of the PR."
128+
a3link="https://bitcoincore.reviews/27600#l-126"
129+
130+
q4="Suppose we pass a vector of 40 eviction candidates to `SelectNodeToEvict()`.
131+
Before and after this PR, what’s the theoretical maximum of Tor nodes
132+
that can be protected from eviction?"
133+
a4="Both with and without the PR, the number would be 34 out of 40, assuming
134+
they're not `noban` and inbound."
135+
a4link="https://bitcoincore.reviews/27600#l-156"
91136
%}
92137

93138
## Releases and release candidates
@@ -140,3 +185,4 @@ Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], and
140185
[bs sp]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-June/021750.html
141186
[jager annex4]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-June/021737.html
142187
[Core Lightning 23.05.1]: https://github.com/ElementsProject/lightning/releases/tag/v23.05.1
188+
[review club 27600]: https://bitcoincore.reviews/27600

0 commit comments

Comments
 (0)