synapse-product/synapse/api
Patrick Cloke 7e582a25f8
Improve /sync performance of when passing filters with empty arrays. (#14786)
This has two related changes:

* It enables fast-path processing for an empty filter (`[]`) which was
  previously only used for wildcard not-filters (`["*"]`).
* It special cases a `/sync` filter with no-rooms to skip all room
  processing, previously we would partially skip processing, but would
  generally still calculate intermediate values for each room which were
  then unused.

Future changes might consider further optimizations:

* Skip calculating per-room account data when all rooms are filtered (currently
  this is thrown away).
* Make similar improvements to other endpoints which support filters.
2023-01-09 08:43:50 -05:00
..
__init__.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
auth_blocking.py Remove HomeServer.get_datastore() (#12031) 2022-02-23 11:04:02 +00:00
auth.py Remove unused method in synapse.api.auth.Auth. (#13795) 2022-09-14 10:33:54 -04:00
constants.py Improve validation of field size limits in events. (#14664) 2022-12-13 13:19:19 +00:00
errors.py Improve validation of field size limits in events. (#14664) 2022-12-13 13:19:19 +00:00
filtering.py Improve /sync performance of when passing filters with empty arrays. (#14786) 2023-01-09 08:43:50 -05:00
presence.py Add missing type hints to synapse.api. (#11109) 2021-10-18 15:01:10 -04:00
ratelimiting.py Fix room creation being rate limited too aggressively since Synapse v1.69.0. (#14314) 2022-10-28 11:53:34 +01:00
room_versions.py Improve validation of field size limits in events. (#14664) 2022-12-13 13:19:19 +00:00
urls.py Use servlets for /key/ endpoints. (#14229) 2022-10-20 11:32:47 -04:00