Compare commits

..

17 commits

Author SHA1 Message Date
Jacob Taylor
dfc33bf1b9 exponential backoff is now just bees. did you want bees? no? well you have them now. congrats 2025-08-14 19:17:01 -07:00
Jacob Taylor
5e1c396ab2 fix too many infos 2025-08-14 19:17:01 -07:00
Jacob Taylor
cae1f0244e more funny settings (part 3 of 12) 2025-08-14 19:17:01 -07:00
Jacob Taylor
1374126853 sender_workers scaling. this time, with feeling! 2025-08-14 19:17:01 -07:00
Jacob Taylor
a29ab94e03 vehicle loan documentation now available at window 7 2025-08-14 19:17:01 -07:00
Jacob Taylor
4df3794894 lock the getter instead ??? c/o M 2025-08-14 19:17:01 -07:00
Jacob Taylor
cc8880f65f make fetching key room events less smart 2025-08-14 19:17:01 -07:00
Jacob Taylor
1f18a1f537 change rocksdb stats level to 3
scale rocksdb background jobs and subcompactions

change rocksdb default error level to info from error

delete unused num_threads function

fix warns from cargo
2025-08-14 19:17:01 -07:00
nexy7574
7de49b2961 log which room struggled to get mainline depth 2025-08-14 19:17:01 -07:00
nexy7574
ed28159800 more logs 2025-08-14 19:17:01 -07:00
nexy7574
5c32436e8a Fix room ID check 2025-08-14 19:17:01 -07:00
nexy7574
0040331c96 Kick up a fuss when m.room.create is unfindable 2025-08-14 19:17:01 -07:00
nexy7574
819e9696ab Note about ruma#2064 in TODO 2025-08-14 19:17:01 -07:00
nexy7574
62928623db fix an auth rule not applying correctly 2025-08-14 19:17:01 -07:00
Jacob Taylor
cf64def999 upgrade some settings to enable 5g in continuwuity
enable converged 6g at the edge in continuwuity

better stateinfo_cache_capacity default

better roomid_spacehierarchy_cache_capacity

make sender workers default better and clamp value to core count

update sender workers documentation

add more parallelism_scaled and make them public

update 1 document
2025-08-14 19:17:01 -07:00
Jacob Taylor
7806a694a0 bump the number of allowed immutable memtables by 1, to allow for greater flood protection
this should probably not be applied if you have rocksdb_atomic_flush = false (the default)
2025-08-14 19:17:01 -07:00
Jacob Taylor
2ec33db6c3 probably incorrectly delete support for non-standardized matrix srv record 2025-08-14 19:17:01 -07:00
2 changed files with 7 additions and 29 deletions

View file

@ -3,7 +3,7 @@ use std::{fmt::Debug, mem};
use bytes::Bytes; use bytes::Bytes;
use conduwuit::{ use conduwuit::{
Err, Error, Result, debug, debug::INFO_SPAN_LEVEL, debug_error, debug_warn, err, Err, Error, Result, debug, debug::INFO_SPAN_LEVEL, debug_error, debug_warn, err,
error::inspect_debug_log, implement, trace, utils::string::EMPTY, warn, error::inspect_debug_log, implement, trace, utils::string::EMPTY,
}; };
use http::{HeaderValue, header::AUTHORIZATION}; use http::{HeaderValue, header::AUTHORIZATION};
use ipaddress::IPAddress; use ipaddress::IPAddress;
@ -193,7 +193,7 @@ fn handle_error(
) -> Result { ) -> Result {
if e.is_timeout() || e.is_connect() { if e.is_timeout() || e.is_connect() {
e = e.without_url(); e = e.without_url();
debug_warn!(?url, "network error while sending request: {e:?}"); debug_warn!("{e:?}");
} else if e.is_redirect() { } else if e.is_redirect() {
debug_error!( debug_error!(
method = ?method, method = ?method,
@ -204,7 +204,7 @@ fn handle_error(
e, e,
); );
} else { } else {
warn!(?url, "failed to send federation request: {e:?}"); debug_error!("{e:?}");
} }
Err(e.into()) Err(e.into())

View file

@ -10,7 +10,7 @@ use std::{
use base64::{Engine as _, engine::general_purpose::URL_SAFE_NO_PAD}; use base64::{Engine as _, engine::general_purpose::URL_SAFE_NO_PAD};
use conduwuit_core::{ use conduwuit_core::{
Error, Event, Result, debug, err, error, info, Error, Event, Result, debug, err, error,
result::LogErr, result::LogErr,
trace, trace,
utils::{ utils::{
@ -142,7 +142,7 @@ impl Service {
} }
fn handle_response_err(dest: Destination, statuses: &mut CurTransactionStatus, e: &Error) { fn handle_response_err(dest: Destination, statuses: &mut CurTransactionStatus, e: &Error) {
debug!(dest = ?dest, "error response: {e:?}"); debug!(dest = ?dest, "{e:?}");
statuses.entry(dest).and_modify(|e| { statuses.entry(dest).and_modify(|e| {
*e = match e { *e = match e {
| TransactionStatus::Running => TransactionStatus::Failed(1, Instant::now()), | TransactionStatus::Running => TransactionStatus::Failed(1, Instant::now()),
@ -177,21 +177,7 @@ impl Service {
if !new_events.is_empty() { if !new_events.is_empty() {
self.db.mark_as_active(new_events.iter()); self.db.mark_as_active(new_events.iter());
let new_events_vec: Vec<SendingEvent> = let new_events_vec = new_events.into_iter().map(|(_, event)| event).collect();
new_events.into_iter().map(|(_, event)| event).collect();
if let Some(status) = statuses.get(&dest.clone()) {
if matches!(status, TransactionStatus::Running) {
// If the server is in backoff, clear it
info!(
?dest,
"Catching up previously failed destination with {}+ new events",
new_events_vec.len()
);
statuses.insert(dest.clone(), TransactionStatus::Running);
}
}
futures.push(self.send_events(dest.clone(), new_events_vec)); futures.push(self.send_events(dest.clone(), new_events_vec));
} else { } else {
statuses.remove(dest); statuses.remove(dest);
@ -873,20 +859,12 @@ impl Service {
pdus, pdus,
edus, edus,
}; };
let pdu_count = request.pdus.len();
let edu_count = request.edus.len();
let result = self let result = self
.services .services
.federation .federation
.execute_on(&self.services.client.sender, &server, request) .execute_on(&self.services.client.sender, &server, request)
.await .await;
.inspect(|_| {
info!(%txn_id, %server, "Sent {} PDUs, {} EDUs", pdu_count, edu_count);
})
.inspect_err(|e| {
info!(%txn_id, %server, "Failed to send transaction ({} PDUs, {} EDUs): {e:?}", pdu_count, edu_count);
});
for (event_id, result) in result.iter().flat_map(|resp| resp.pdus.iter()) { for (event_id, result) in result.iter().flat_map(|resp| resp.pdus.iter()) {
if let Err(e) = result { if let Err(e) = result {