This commit is contained in:
Alexey
2026-03-21 15:45:29 +03:00
parent 7a8f946029
commit d7bbb376c9
154 changed files with 6194 additions and 3775 deletions

View File

@@ -142,9 +142,7 @@ impl MePool {
continue;
}
if !matches!(
super::pool::WriterContour::from_u8(
writer.contour.load(Ordering::Relaxed),
),
super::pool::WriterContour::from_u8(writer.contour.load(Ordering::Relaxed),),
super::pool::WriterContour::Active
) {
continue;
@@ -154,7 +152,8 @@ impl MePool {
}
}
drop(ws);
candidates.sort_by_key(|addr| (active_by_endpoint.get(addr).copied().unwrap_or(0), *addr));
candidates
.sort_by_key(|addr| (active_by_endpoint.get(addr).copied().unwrap_or(0), *addr));
}
let start = (self.rr.fetch_add(1, Ordering::Relaxed) as usize) % candidates.len();
for offset in 0..candidates.len() {
@@ -212,10 +211,14 @@ impl MePool {
if !same_endpoint_quarantined {
for attempt in 0..fast_retries {
self.stats.increment_me_reconnect_attempt();
match self.connect_one_for_dc(addr, writer_dc, self.rng.as_ref()).await {
match self
.connect_one_for_dc(addr, writer_dc, self.rng.as_ref())
.await
{
Ok(()) => {
self.stats.increment_me_reconnect_success();
self.stats.increment_me_writer_restored_same_endpoint_total();
self.stats
.increment_me_writer_restored_same_endpoint_total();
info!(
%addr,
attempt = attempt + 1,
@@ -267,7 +270,11 @@ impl MePool {
false
}
pub(crate) fn trigger_immediate_refill_for_dc(self: &Arc<Self>, addr: SocketAddr, writer_dc: i32) {
pub(crate) fn trigger_immediate_refill_for_dc(
self: &Arc<Self>,
addr: SocketAddr,
writer_dc: i32,
) {
let endpoint_key = RefillEndpointKey {
dc: writer_dc,
addr,