Skip to main contentModule get_missing_events
Source use std::collections::BTreeSet; π use std::collections::VecDeque; π use axum::extract::State; π use futures::StreamExt; π use futures::TryFutureExt; π use futures::TryStreamExt; π use futures::future::try_join; π use futures::stream::FuturesOrdered; π use futures::stream::unfold; π use ruma::CanonicalJsonObject; π use ruma::CanonicalJsonValue; π use ruma::EventId; π use ruma::OwnedEventId; π use ruma::api::federation::event::get_missing_events; π use ruma::canonical_json::redact_in_place; π use tuwunel_core::Error; π use tuwunel_core::Result; π use tuwunel_core::debug; π use tuwunel_core::debug; π use tuwunel_core::err; π use tuwunel_core::utils::math::usize_from_ruma_bounded; π use tuwunel_core::utils::stream::TryWidebandExt; π use tuwunel_core::utils::stream::automatic_width; π use tuwunel_matrix::room_version::rules as room_version_rules; π use super::AccessCheck; π use crate::Ruma; π
- EARLIEST_MAX π
- LIMIT_DEFAULT π
- spec says default is 10
- LIMIT_MAX π
- arbitrary number but synapseβs is 20 and we can handle lots of these anyways
- WALK_MAX π
- get_missing_events_route π
POST /_matrix/federation/v1/get_missing_events/{roomId}- next_missing_event π
- walk_seed π
- Builds the walkβs dedup set and its initial queue.
- Pending π
- Seen π