forked-synapse/synapse
David Robertson 1bc9985eb7
Have replication clients remove _INT_STREAM_POS (#15309)
* Have replication clients remove _INT_STREAM_POS

Suppose worker A makes an internal http request from worker B. B may
make changes that A later learns about over replication. We want A's
request to block until it has seen those changes—mainly to ensure A's
caches are invalidated promptly. This helps provide read-after-write
consistency, eliminating entire categories of races and test flakes.

To implement this, B includes a top-level field `_INT_STREAM_POS` in its
response JSON. Roughly speaking, the field's value tells A what to wait
for. But we weren't removing that internal field before A's request
completed!

Introduced in https://github.com/matrix-org/synapse/pull/14820.
Fixes #15308.

* Changelog
2023-03-22 12:53:55 +00:00
..
_scripts Revert "check sqlite database file exists before porting/#14692" (#15301) 2023-03-21 10:49:25 -07:00
api Implement MSC2659: application service ping endpoint (#15249) 2023-03-16 15:00:03 +01:00
app Add information on uploaded media to user export command. (#15107) 2023-02-23 13:14:17 -05:00
appservice Implement MSC2659: application service ping endpoint (#15249) 2023-03-16 15:00:03 +01:00
config Implement MSC2659: application service ping endpoint (#15249) 2023-03-16 15:00:03 +01:00
crypto Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
events Merge branch 'release-v1.79' into develop 2023-03-13 18:35:21 +00:00
federation Change the parameter immediate of send_device_messages to default to True (#15297) 2023-03-21 17:59:55 -07:00
handlers Make EventHandler.get_event return None when the requested event is not found (#15298) 2023-03-21 13:23:47 +00:00
http Add Synapse-Trace-Id to access-control-expose-headers header (#14974) 2023-03-20 11:14:05 -07:00
logging Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
media Separate HTTP preview code and URL previewer. (#15269) 2023-03-20 14:32:26 -04:00
metrics Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
module_api Move Account Validity callbacks to a dedicated file (#15237) 2023-03-16 10:35:31 +00:00
push Stabilize support for MSC3873: disambuguated event push keys. (#15190) 2023-03-07 11:27:57 -05:00
replication Have replication clients remove _INT_STREAM_POS (#15309) 2023-03-22 12:53:55 +00:00
res Fix #11308 : Remove dependency on jquery on reCAPTCHA page (#14672) 2022-12-14 12:02:28 +00:00
rest Make POST /_matrix/client/v3/rooms/{roomId}/report/{eventId} endpoint return 404 if event exists, but the user lacks access (#15300) 2023-03-21 13:24:03 +00:00
server_notices Remove unused room_alias field from /createRoom response (#15093) 2023-02-22 11:07:28 +00:00
spam_checker_api Fix import in module_api module and docs on the new check_event_for_spam signature (#12918) 2022-05-31 12:04:53 +02:00
state Return read-only collections from @cached methods (#13755) 2023-02-10 23:29:00 +00:00
static Add viewport directive to HTML templates to optimise for mobile (#13493) 2022-08-11 14:04:20 +01:00
storage Apply & bundle edits for non-message events. (#15295) 2023-03-21 14:19:54 -04:00
streams Use mypy 1.0 (#15052) 2023-02-16 16:09:11 +00:00
types Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
util Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
__init__.py Remove dangling reference to being a reference implementation (#15167) 2023-02-27 20:08:18 +00:00
event_auth.py More speedups/fixes to creating batched events (#15195) 2023-03-07 13:54:39 -08:00
notifier.py Fix a bug in the send_local_online_presence_to module API (#14880) 2023-01-25 21:34:37 +00:00
py.typed Mark Module API error imports as re-exported and mark Synapse as containing type annotations (#11054) 2021-10-13 08:42:41 +01:00
server.py Move Account Validity callbacks to a dedicated file (#15237) 2023-03-16 10:35:31 +00:00
visibility.py Refactor filter_events_for_server (#15240) 2023-03-10 15:31:25 +00:00