diff --git a/src/client_server/sync.rs b/src/client_server/sync.rs
index 0f683c8d..4e670ec6 100644
--- a/src/client_server/sync.rs
+++ b/src/client_server/sync.rs
@@ -84,8 +84,8 @@ pub async fn sync_events_route(
         for pdu in db
             .rooms
             .pdus_since(&sender_id, &room_id, since)?
-            .filter_map(|r| r.ok())
         {
+            let pdu = pdu?;
             send_notification_counts = true;
             if pdu.kind == EventType::RoomMember {
                 send_member_count = true;
@@ -395,8 +395,8 @@ pub async fn sync_events_route(
         for pdu in db
             .rooms
             .pdus_since(&sender_id, &room_id, since)?
-            .filter_map(|r| r.ok())
         {
+            let pdu = pdu?;
             if pdu.kind == EventType::RoomMember {
                 if pdu.state_key == Some(sender_id.to_string()) {
                     let content = serde_json::from_value::<