This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Fix a bug introduced in Synapse v1.50.0rc1 whereby outbound federation could fail because too many EDUs were produced for device updates. #11730
Merged
reivilibre
merged 17 commits into
release-v1.50
from
rei/regression_device_edus_too_many
Jan 13, 2022
Merged
Changes from 3 commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
e3665f4
Clarify docstring
reivilibre 9f54d0f
Add a few HL-style invariant comments to help reason about how long c…
reivilibre ad8da37
Extend docstring for `_get_device_update_edus_by_remote`
reivilibre d17de19
Comment about `_get_device_update_edus_by_remote` length guarantee
reivilibre a306a89
Add types for `_get_device_updates_by_remote_txn` and amend docstring
reivilibre cc8904e
Create variables for if conditions
reivilibre 2cf1691
Use extracted variable in if conditions
reivilibre aceb240
Calculate the remaining length budget
reivilibre 451b4ff
Check for 2 free slots before adding a cross-signing key update
reivilibre 34ae0ba
Add FIXME note that this complication can be removed when we cut out …
reivilibre 62e8e45
Newsfile
reivilibre 2107d12
Add a test to ensure cross-signing key updates don't blow the limit
reivilibre 6643b94
Apply suggestions from code review
reivilibre 8b01179
Use JsonDict type for EDUs
reivilibre b5dc363
Commentsmithing
reivilibre 0476aee
Check there are no more updates left after the end of the test
reivilibre 57b3601
Add FIXME note about discarding OpenTracing contexts
reivilibre File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's going on here? Could we have problems if the same key occurs twice in
updates
? (Ahh, looks like that'll never happen because of how it's sourced from the DB?)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's intentional: later ones overwrite old ones (hence this
if
-block)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was just worried that this might throw away a previous
update_context
, which sounds bad. But we're not changing that soo... maybe we should just leave itThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's 'just' the opentracing span. Maybe I'll put a FIXME note in there about it; not sure what the right answer is at this instant — sounds like it could make it hard to trace things down which is not great, but it's not release blocking considering it was always like this ...