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(