Invalidate the receipt cache correctly
parent
c214d3e36e
commit
03c8df54f0
|
@ -42,10 +42,10 @@ class SlavedPushActionsStore(SlavedEventStore, SlavedReceiptsStore):
|
|||
event, backfilled, reset_state
|
||||
)
|
||||
|
||||
def invalidate_caches_for_receipt(self, user_id, room_id):
|
||||
def invalidate_caches_for_receipt(self, room_id, receipt_type, user_id):
|
||||
self.get_unread_event_push_actions_by_room_for_user.invalidate_many(
|
||||
(room_id,)
|
||||
)
|
||||
super(SlavedPushActionsStore, self).invalidate_caches_for_receipt(
|
||||
user_id, room_id
|
||||
room_id, receipt_type, user_id
|
||||
)
|
||||
|
|
|
@ -52,12 +52,10 @@ class SlavedReceiptsStore(BaseSlavedStore):
|
|||
if stream:
|
||||
self._receipts_id_gen.advance(stream["position"])
|
||||
for row in stream["rows"]:
|
||||
room_id = row[1]
|
||||
user_id = row[3]
|
||||
self.invalidate_caches_for_receipt(user_id, room_id)
|
||||
self.get_receipts_for_user.invalidate((user_id,))
|
||||
room_id, receipt_type, user_id = row[1:4]
|
||||
self.invalidate_caches_for_receipt(room_id, receipt_type, user_id)
|
||||
|
||||
return super(SlavedReceiptsStore, self).process_replication(result)
|
||||
|
||||
def invalidate_caches_for_receipt(self, user_id, room_id):
|
||||
self.get_receipts_for_user.invalidate((user_id,))
|
||||
def invalidate_caches_for_receipt(self, room_id, receipt_type, user_id):
|
||||
self.get_receipts_for_user.invalidate((user_id, receipt_type))
|
||||
|
|
Loading…
Reference in New Issue