mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2024-12-17 06:44:22 -05:00
Avoid attempting to delete push actions for remote users. (#12879)
Remote users will never have push actions, so we can avoid a database round-trip/transaction completely.
This commit is contained in:
parent
b83bc5fab5
commit
b5707ceaba
1
changelog.d/12879.misc
Normal file
1
changelog.d/12879.misc
Normal file
@ -0,0 +1 @@
|
|||||||
|
Avoid running queries which will never result in deletions.
|
@ -223,7 +223,7 @@ class PerDestinationQueue:
|
|||||||
"""Marks that the destination has new data to send, without starting a
|
"""Marks that the destination has new data to send, without starting a
|
||||||
new transaction.
|
new transaction.
|
||||||
|
|
||||||
If a transaction loop is already in progress then a new transcation will
|
If a transaction loop is already in progress then a new transaction will
|
||||||
be attempted when the current one finishes.
|
be attempted when the current one finishes.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
@ -938,7 +938,7 @@ class EventPushActionsWorkerStore(SQLBaseStore):
|
|||||||
users can still get a list of recent highlights.
|
users can still get a list of recent highlights.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
txn: The transcation
|
txn: The transaction
|
||||||
room_id: Room ID to delete from
|
room_id: Room ID to delete from
|
||||||
user_id: user ID to delete for
|
user_id: user ID to delete for
|
||||||
stream_ordering: The lowest stream ordering which will
|
stream_ordering: The lowest stream ordering which will
|
||||||
|
@ -673,8 +673,11 @@ class ReceiptsWorkerStore(SQLBaseStore):
|
|||||||
lock=False,
|
lock=False,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# When updating a local users read receipt, remove any push actions
|
||||||
|
# which resulted from the receipt's event and all earlier events.
|
||||||
if (
|
if (
|
||||||
receipt_type in (ReceiptTypes.READ, ReceiptTypes.READ_PRIVATE)
|
self.hs.is_mine_id(user_id)
|
||||||
|
and receipt_type in (ReceiptTypes.READ, ReceiptTypes.READ_PRIVATE)
|
||||||
and stream_ordering is not None
|
and stream_ordering is not None
|
||||||
):
|
):
|
||||||
self._remove_old_push_actions_before_txn( # type: ignore[attr-defined]
|
self._remove_old_push_actions_before_txn( # type: ignore[attr-defined]
|
||||||
|
@ -313,7 +313,7 @@ class EventsPersistenceStorage:
|
|||||||
List of events persisted, the current position room stream position.
|
List of events persisted, the current position room stream position.
|
||||||
The list of events persisted may not be the same as those passed in
|
The list of events persisted may not be the same as those passed in
|
||||||
if they were deduplicated due to an event already existing that
|
if they were deduplicated due to an event already existing that
|
||||||
matched the transcation ID; the existing event is returned in such
|
matched the transaction ID; the existing event is returned in such
|
||||||
a case.
|
a case.
|
||||||
"""
|
"""
|
||||||
partitioned: Dict[str, List[Tuple[EventBase, EventContext]]] = {}
|
partitioned: Dict[str, List[Tuple[EventBase, EventContext]]] = {}
|
||||||
|
Loading…
Reference in New Issue
Block a user