shard sender into multiple task workers by destination hash

rename Destination::Normal variant

tracing instruments

Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
Jason Volk 2024-12-18 03:34:56 +00:00 committed by strawberry
parent 98e6c81e49
commit af3d6a2e37
9 changed files with 275 additions and 95 deletions

View file

@ -4,6 +4,7 @@ use std::{
};
use conduwuit::{debug, debug_error, debug_info, debug_warn, err, error, trace, Err, Result};
use futures::FutureExt;
use hickory_resolver::error::ResolveError;
use ipaddress::IPAddress;
use ruma::ServerName;
@ -32,7 +33,7 @@ impl super::Service {
(result, true)
} else {
self.validate_dest(server_name)?;
(self.resolve_actual_dest(server_name, true).await?, false)
(self.resolve_actual_dest(server_name, true).boxed().await?, false)
};
let CachedDest { dest, host, .. } = result;