diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py
index 19cd55b8cfb06c84ba8af0701617feb25b992b2b..e252e69888f70d213d08beba208671019a774add 100644
--- a/synapse/handlers/federation.py
+++ b/synapse/handlers/federation.py
@@ -2883,17 +2883,17 @@ class FederationHandler(BaseHandler):
 
         await self.pusher_pool.on_new_notifications(event_stream_id, max_stream_id)
 
-    def _clean_room_for_join(self, room_id):
+    async def _clean_room_for_join(self, room_id: str) -> None:
         """Called to clean up any data in DB for a given room, ready for the
         server to join the room.
 
         Args:
-            room_id (str)
+            room_id
         """
         if self.config.worker_app:
-            return self._clean_room_for_join_client(room_id)
+            await self._clean_room_for_join_client(room_id)
         else:
-            return self.store.clean_room_for_join(room_id)
+            await self.store.clean_room_for_join(room_id)
 
     def user_joined_room(self, user, room_id):
         """Called when a new user has joined the room