diff --git a/src/service/rooms/event_handler/fetch_state.rs b/src/service/rooms/event_handler/fetch_state.rs index ae306014f..22f8c6acd 100644 --- a/src/service/rooms/event_handler/fetch_state.rs +++ b/src/service/rooms/event_handler/fetch_state.rs @@ -1,6 +1,7 @@ use std::{ cmp::max, - collections::{HashMap, hash_map}, + collections::{HashMap, HashSet, hash_map}, + hash::{BuildHasherDefault, DefaultHasher}, time::{Duration, Instant}, }; @@ -136,7 +137,8 @@ pub(super) async fn fetch_state( // arbitrary state injection. // Atomic fetch does not have this problem as each PDU is evaluated // individually. - let expected = &res.pdu_ids; + let expected: &HashSet> = + &HashSet::from_iter(res.pdu_ids.clone()); state .into_iter() .stream()