mirror of
https://github.com/element-hq/synapse
synced 2024-10-03 02:42:40 +00:00
Use fully-qualified PersistedEventPosition
when returning membership for user
Spawning from https://github.com/element-hq/synapse/pull/17187
This commit is contained in:
parent
8a3270075b
commit
271a196121
3 changed files with 16 additions and 4 deletions
|
@ -476,7 +476,7 @@ class RoomMemberWorkerStore(EventsWorkerStore, CacheInvalidationWorkerStore):
|
||||||
)
|
)
|
||||||
|
|
||||||
sql = """
|
sql = """
|
||||||
SELECT room_id, e.sender, c.membership, event_id, e.stream_ordering, r.room_version
|
SELECT room_id, e.sender, c.membership, event_id, e.instance_name, e.stream_ordering, r.room_version
|
||||||
FROM local_current_membership AS c
|
FROM local_current_membership AS c
|
||||||
INNER JOIN events AS e USING (room_id, event_id)
|
INNER JOIN events AS e USING (room_id, event_id)
|
||||||
INNER JOIN rooms AS r USING (room_id)
|
INNER JOIN rooms AS r USING (room_id)
|
||||||
|
@ -488,7 +488,17 @@ class RoomMemberWorkerStore(EventsWorkerStore, CacheInvalidationWorkerStore):
|
||||||
)
|
)
|
||||||
|
|
||||||
txn.execute(sql, (user_id, *args))
|
txn.execute(sql, (user_id, *args))
|
||||||
results = [RoomsForUser(*r) for r in txn]
|
results = [
|
||||||
|
RoomsForUser(
|
||||||
|
room_id,
|
||||||
|
sender,
|
||||||
|
membership,
|
||||||
|
event_id,
|
||||||
|
PersistedEventPosition(instance_name, stream_ordering),
|
||||||
|
room_version,
|
||||||
|
)
|
||||||
|
for room_id, sender, membership, event_id, instance_name, stream_ordering, room_version in txn
|
||||||
|
]
|
||||||
|
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
|
@ -35,7 +35,7 @@ class RoomsForUser:
|
||||||
sender: str
|
sender: str
|
||||||
membership: str
|
membership: str
|
||||||
event_id: str
|
event_id: str
|
||||||
stream_ordering: int
|
event_pos: PersistedEventPosition
|
||||||
room_version_id: str
|
room_version_id: str
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -154,7 +154,9 @@ class EventsWorkerStoreTestCase(BaseWorkerStoreTestCase):
|
||||||
USER_ID,
|
USER_ID,
|
||||||
"invite",
|
"invite",
|
||||||
event.event_id,
|
event.event_id,
|
||||||
event.internal_metadata.stream_ordering,
|
PersistedEventPosition(
|
||||||
|
"master", event.internal_metadata.stream_ordering
|
||||||
|
),
|
||||||
RoomVersions.V1.identifier,
|
RoomVersions.V1.identifier,
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
|
|
Loading…
Reference in a new issue