소스 검색

Stop setting the outlier flag for things that aren't (#10614)

Marking things as outliers to inhibit pushes is a sledgehammer to crack a
nut. Move the test further down the stack so that we just inhibit the thing we
want.
tags/v1.42.0rc1
Richard van der Hoff 2 년 전
committed by GitHub
부모
커밋
272b89d547
No known key found for this signature in database GPG 키 ID: 4AEE18F83AFDEB23
2개의 변경된 파일3개의 추가작업 그리고 7개의 파일을 삭제
  1. +1
    -0
      changelog.d/10614.misc
  2. +2
    -7
      synapse/handlers/federation.py

+ 1
- 0
changelog.d/10614.misc 파일 보기

@@ -0,0 +1 @@
Clean up some of the federation event authentication code for clarity.

+ 2
- 7
synapse/handlers/federation.py 파일 보기

@@ -293,13 +293,7 @@ class FederationHandler(BaseHandler):
prevs = set(pdu.prev_event_ids())
seen = await self.store.have_events_in_timeline(prevs)

if min_depth is not None and pdu.depth < min_depth:
# This is so that we don't notify the user about this
# message, to work around the fact that some events will
# reference really really old events we really don't want to
# send to the clients.
pdu.internal_metadata.outlier = True
elif min_depth is not None and pdu.depth > min_depth:
if min_depth is not None and pdu.depth > min_depth:
missing_prevs = prevs - seen
if sent_to_us_directly and missing_prevs:
# If we're missing stuff, ensure we only fetch stuff one
@@ -2375,6 +2369,7 @@ class FederationHandler(BaseHandler):
not event.internal_metadata.is_outlier()
and not backfilled
and not context.rejected
and (await self.store.get_min_depth(event.room_id)) <= event.depth
):
await self.action_generator.handle_push_actions_for_event(
event, context


불러오는 중...
취소
저장