diff options
author | Erik Johnston <erik@matrix.org> | 2019-02-20 16:54:35 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2019-02-20 18:14:12 +0000 |
commit | 71b625d80806886794c5e72f7ff11432e99b736c (patch) | |
tree | 3150c6d7a279d464f32529669494afdccb10feee /synapse/storage | |
parent | Merge pull request #4694 from matrix-org/erikj/fix_sentry_config_format (diff) | |
download | synapse-71b625d80806886794c5e72f7ff11432e99b736c.tar.xz |
Stop backpaginating when events not visible
Diffstat (limited to 'synapse/storage')
-rw-r--r-- | synapse/storage/event_federation.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/synapse/storage/event_federation.py b/synapse/storage/event_federation.py index 38809ed0fc..830b171caa 100644 --- a/synapse/storage/event_federation.py +++ b/synapse/storage/event_federation.py @@ -442,6 +442,28 @@ class EventFederationWorkerStore(EventsWorkerStore, SignatureWorkerStore, event_results.reverse() return event_results + @defer.inlineCallbacks + def get_forward_events(self, event_ids): + """Fetch all events that have the given events as a prev event + + Args: + event_ids (iterable[str]) + + Returns: + Deferred[list[str]] + """ + rows = yield self._simple_select_many_batch( + table="event_edges", + column="prev_event_id", + iterable=event_ids, + retcols=("event_id",), + desc="get_forward_events" + ) + + defer.returnValue([ + row["event_id"] for row in rows + ]) + class EventFederationStore(EventFederationWorkerStore): """ Responsible for storing and serving up the various graphs associated |