mirror of
https://gitlab.com/famedly/conduit.git
synced 2025-08-16 18:01:35 +00:00
tokio::spawn does not run until completion of joins
This commit is contained in:
parent
31102a43c5
commit
f0ca5253aa
4 changed files with 54 additions and 47 deletions
|
@ -291,27 +291,29 @@ pub async fn register_route(body: Ruma<register::v3::Request>) -> Result<registe
|
|||
}
|
||||
}
|
||||
|
||||
let servers = [services().globals.server_name().to_owned()];
|
||||
let join_by_default = services()
|
||||
let default_rooms = services()
|
||||
.globals
|
||||
.join_by_default()
|
||||
.expect("validated on db startup");
|
||||
.default_rooms()
|
||||
.expect("default rooms should be validated on db startup");
|
||||
|
||||
for room_id in join_by_default {
|
||||
join_room_by_id_helper(
|
||||
Some(&user_id),
|
||||
room_id,
|
||||
Some("All men are equal before fish.".to_owned()),
|
||||
&servers,
|
||||
None,
|
||||
)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
tracing::error!("Failed to join default room: {e}");
|
||||
let _user_id = user_id.clone();
|
||||
let servers = [services().globals.server_name().to_owned()];
|
||||
|
||||
Error::bad_config("Failed to join default room.")
|
||||
})?;
|
||||
}
|
||||
tokio::spawn(async move {
|
||||
for room_id in default_rooms {
|
||||
let _ = join_room_by_id_helper(
|
||||
Some(&_user_id),
|
||||
room_id,
|
||||
Some("All men are equal before fish.".to_owned()),
|
||||
&servers,
|
||||
None,
|
||||
)
|
||||
.await
|
||||
.inspect_err(|e| {
|
||||
tracing::warn!("Failed to join default room: {e}");
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Ok(register::v3::Response {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue