synapse/tests
Eric Eastwood df8b91ed2b
Limit and filter the number of backfill points to get from the database (#13879)
There is no need to grab thousands of backfill points when we only need 5 to make the `/backfill` request with. We need to grab a few extra in case the first few aren't visible in the history.

Previously, we grabbed thousands of backfill points from the database, then sorted and filtered them in the app. Fetching the 4.6k backfill points for `#matrix:matrix.org` from the database takes ~50ms - ~570ms so it's not like this saves a lot of time 🤷. But it might save us more time now that `get_backfill_points_in_room`/`get_insertion_event_backward_extremities_in_room` are more complicated after https://github.com/matrix-org/synapse/pull/13635 

This PR moves the filtering and limiting to the SQL query so we just have less data to work with in the first place.

Part of https://github.com/matrix-org/synapse/issues/13356
2022-09-28 15:26:16 -05:00
..
api `synapse.api.auth.Auth` cleanup: make permission-related methods use `Requester` instead of the `UserID` (#13024) 2022-08-22 14:17:59 +01:00
app Remove configuration options for direct TCP replication. (#13647) 2022-09-06 07:50:02 +00:00
appservice Remove remaining bits of groups code. (#12936) 2022-06-01 09:41:25 -04:00
config Reload cache factors from disk on SIGHUP (#12673) 2022-05-11 13:43:22 +00:00
crypto Remove direct refeferences to PyNaCl (use signedjson instead). (#12902) 2022-06-01 07:32:35 -04:00
events Register homeserver modules when creating test homeserver (#13558) 2022-08-19 16:52:20 +01:00
federation Accept & store thread IDs for receipts (implement MSC3771). (#13782) 2022-09-23 14:33:28 +00:00
handlers Persist CreateRoom events to DB in a batch (#13800) 2022-09-28 10:11:48 +00:00
http Cancel the processing of key query requests when they time out. (#13680) 2022-09-07 12:03:32 +01:00
logging Allow use of both `@trace` and `@tag_args` stacked on the same function (#13453) 2022-08-09 14:32:33 -05:00
module_api Reduce the number of tests using TCP replication. (#13543) 2022-08-19 08:25:24 -04:00
push Track device IDs for pushers (#13831) 2022-09-21 15:31:53 +00:00
replication Accept & store thread IDs for receipts (implement MSC3771). (#13782) 2022-09-23 14:33:28 +00:00
rest Prepatory work for batching events to send (#13487) 2022-09-28 10:39:03 +01:00
scripts Add some type hints to tests files (#12833) 2022-05-23 11:23:26 +00:00
server_notices Fix that sending server notices fail if avatar is `None` (#13566) 2022-08-23 09:48:35 +01:00
state Fix typechecks against twisted trunk (#13061) 2022-06-15 11:49:58 +01:00
storage Limit and filter the number of backfill points to get from the database (#13879) 2022-09-28 15:26:16 -05:00
test_utils Rename storage classes (#12913) 2022-05-31 12:17:50 +00:00
util Fix `have_seen_event` cache not being invalidated (#13863) 2022-09-27 15:55:43 -05:00
__init__.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
server.py Register homeserver modules when creating test homeserver (#13558) 2022-08-19 16:52:20 +01:00
test_distributor.py Replace assertEquals and friends with non-deprecated versions. (#12092) 2022-02-28 07:12:29 -05:00
test_event_auth.py Rename the `EventFormatVersions` enum values so that they line up with room version numbers. (#13706) 2022-09-07 11:08:20 +01:00
test_federation.py Rip out auth-event reconciliation code (#12943) 2022-07-14 21:52:26 +00:00
test_mau.py Remove remaining bits of groups code. (#12936) 2022-06-01 09:41:25 -04:00
test_metrics.py Add experimental configuration option to allow disabling legacy Prometheus metric names. (#13540) 2022-08-24 11:35:54 +00:00
test_phone_home.py Share some metrics between the Prometheus exporter and the phone home stats (#13671) 2022-09-05 10:26:43 +00:00
test_rust.py Add a stub Rust crate (#12595) 2022-09-06 19:01:37 +01:00
test_server.py Remove configuration options for direct TCP replication. (#13647) 2022-09-06 07:50:02 +00:00
test_state.py Faster room joins: avoid blocking when pulling events with missing prevs (#13355) 2022-07-26 12:39:23 +01:00
test_terms_auth.py Use literals in place of `HTTPStatus` constants in tests (#13463) 2022-08-05 16:59:09 +02:00
test_test_utils.py Replace assertEquals and friends with non-deprecated versions. (#12092) 2022-02-28 07:12:29 -05:00
test_types.py Fix error in `is_mine_id` when encountering a malformed ID (#13746) 2022-09-08 15:54:36 +01:00
test_visibility.py Rename test case method to `add_hashes_and_signatures_from_other_server` (#13255) 2022-07-12 18:46:32 +00:00
unittest.py Persist CreateRoom events to DB in a batch (#13800) 2022-09-28 10:11:48 +00:00
utils.py Remove configuration options for direct TCP replication. (#13647) 2022-09-06 07:50:02 +00:00