Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Conversation

richvdh
Copy link
Member

@richvdh richvdh commented Oct 16, 2018

It's quite important that get_missing_events returns the latest events in the
room; however we were pulling event ids out of the database until we got at
least
10, and then taking the earliest of the results.

We also shouldn't really be relying on depth, and should be checking the
room_id.

I should really write tests for this, but I am already so far down too many
other rabbit-holes that I fear for my escape.

It's quite important that get_missing_events returns the *latest* events in the
room; however we were pulling event ids out of the database until we got *at
least* 10, and then taking the *earliest* of the results.

We also shouldn't really be relying on depth, and should be checking the
room_id.
@richvdh richvdh force-pushed the rav/fix_get_missing_events branch from 6743d56 to fc0f13d Compare October 16, 2018 20:10
@richvdh richvdh requested a review from a team October 17, 2018 08:14
@richvdh richvdh merged commit 6ec9d8b into develop Oct 17, 2018
@richvdh
Copy link
Member Author

richvdh commented Oct 19, 2018

For the record: when this bug happens, the other end will see an error along the lines of:

2018-10-19 04:30:32,222 - synapse.federation.federation_server - 198 - WARNING - PUT-576772-... - Error handling PDU ...: ERROR 403: Your server isn't divulging details about prev_events referenced in this event.

@richvdh richvdh deleted the rav/fix_get_missing_events branch October 19, 2018 20:37
michaelkaye added a commit that referenced this pull request Oct 22, 2018
**Warning**: This release removes the example email notification templates from
`res/templates` (they are now internal to the python package). This should only
affect you if you (a) deploy your Synapse instance from a git checkout or a
github snapshot URL, and (b) have email notifications enabled.

If you have email notifications enabled, you should ensure that
`email.template_dir` is either configured to point at a directory where you
have installed customised templates, or leave it unset to use the default
templates.

The configuration parser will try to detect the situation where
`email.template_dir` is incorrectly set to `res/templates` and do the right
thing, but will warn about this.

Features
--------

- Ship the example email templates as part of the package ([\#4052](#4052))
- Add support for end-to-end key backup (MSC1687) ([\#4019](#4019))

Bugfixes
--------

- Fix bug which made get_missing_events return too few events ([\#4045](#4045))
- Fix bug in event persistence logic which caused 'NoneType is not iterable' ([\#3995](#3995))
- Fix exception in background metrics collection ([\#3996](#3996))
- Fix exception handling in fetching remote profiles ([\#3997](#3997))
- Fix handling of rejected threepid invites ([\#3999](#3999))
- Workers now start on Python 3. ([\#4027](#4027))
- Synapse now starts on Python 3.7. ([\#4033](#4033))

Internal Changes
----------------

- Log exceptions in looping calls ([\#4008](#4008))
- Optimisation for serving federation requests ([\#4017](#4017))
- Add metric to count number of non-empty sync responses ([\#4022](#4022))
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants