From 6425f430d0ab7fae374c22fbbd735db9d2add874 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 6 Oct 2020 11:52:23 +0100 Subject: [PATCH] Fixup get_room_max_token --- synapse/storage/databases/main/stream.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/synapse/storage/databases/main/stream.py b/synapse/storage/databases/main/stream.py index cd708e1c99..6a950f1ba3 100644 --- a/synapse/storage/databases/main/stream.py +++ b/synapse/storage/databases/main/stream.py @@ -356,6 +356,14 @@ class StreamWorkerStore(EventsWorkerStore, SQLBaseStore, metaclass=abc.ABCMeta): raise NotImplementedError() def get_room_max_token(self) -> RoomStreamToken: + """Get a `RoomStreamToken` that marks the current maximum persisted + position of the events stream. Useful to get a token that represents + "now". + + The token returned is a "live" token that may have an instance_map + component. + """ + min_pos = self._stream_id_gen.get_current_token() positions = {} @@ -372,9 +380,6 @@ class StreamWorkerStore(EventsWorkerStore, SQLBaseStore, metaclass=abc.ABCMeta): if p > min_pos } - if set(positions.values()) == {min_pos}: - positions = {} - return RoomStreamToken(None, min_pos, positions) async def get_room_events_stream_for_rooms(