mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-04 16:44:56 -04:00
Pull out less state when handling gaps mk2 (#12852)
This commit is contained in:
parent
1b338476af
commit
b83bc5fab5
8 changed files with 236 additions and 127 deletions
|
@ -69,7 +69,7 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
def persist_event(self, event, state=None):
|
||||
"""Persist the event, with optional state"""
|
||||
context = self.get_success(
|
||||
self.state.compute_event_context(event, old_state=state)
|
||||
self.state.compute_event_context(event, state_ids_before_event=state)
|
||||
)
|
||||
self.get_success(self.persistence.persist_event(event, context))
|
||||
|
||||
|
@ -103,9 +103,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([remote_event_2.event_id])
|
||||
|
@ -135,13 +137,14 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
# setting. The state resolution across the old and new event will then
|
||||
# include it, and so the resolved state won't match the new state.
|
||||
state_before_gap = dict(
|
||||
self.get_success(self.state.get_current_state(self.room_id))
|
||||
self.get_success(self.state.get_current_state_ids(self.room_id))
|
||||
)
|
||||
state_before_gap.pop(("m.room.history_visibility", ""))
|
||||
|
||||
context = self.get_success(
|
||||
self.state.compute_event_context(
|
||||
remote_event_2, old_state=state_before_gap.values()
|
||||
remote_event_2,
|
||||
state_ids_before_event=state_before_gap,
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -177,9 +180,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([remote_event_2.event_id])
|
||||
|
@ -207,9 +212,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([self.remote_event_1.event_id, remote_event_2.event_id])
|
||||
|
@ -247,9 +254,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([remote_event_2.event_id])
|
||||
|
@ -289,9 +298,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([remote_event_2.event_id, local_message_event_id])
|
||||
|
@ -323,9 +334,11 @@ class ExtremPruneTestCase(HomeserverTestCase):
|
|||
RoomVersions.V6,
|
||||
)
|
||||
|
||||
state_before_gap = self.get_success(self.state.get_current_state(self.room_id))
|
||||
state_before_gap = self.get_success(
|
||||
self.state.get_current_state_ids(self.room_id)
|
||||
)
|
||||
|
||||
self.persist_event(remote_event_2, state=state_before_gap.values())
|
||||
self.persist_event(remote_event_2, state=state_before_gap)
|
||||
|
||||
# Check the new extremity is just the new remote event.
|
||||
self.assert_extremities([local_message_event_id, remote_event_2.event_id])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue