MatrixSynapse/synapse
reivilibre 69afe3f7a0
Add a Postgres `REPLICA IDENTITY` to tables that do not have an implicit one. This should allow use of Postgres logical replication. (#16456)
* Add Postgres replica identities to tables that don't have an implicit one

Fixes #16224

* Newsfile

Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>

* Move the delta to version 83 as we missed the boat for 82

* Add a test that all tables have a REPLICA IDENTITY

* Extend the test to include when indices are deleted

* isort

* black

* Fully qualify `oid` as it is a 'hidden attribute' in Postgres 11

* Update tests/storage/test_database.py

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* Add missed tables

---------

Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2023-11-13 16:03:22 +00:00
..
_scripts Convert simple_select_one_txn and simple_select_one to return tuples. (#16612) 2023-11-09 11:13:31 -05:00
api Fix possible AttributeError when account-api is called over unix socket (#16404) 2023-10-09 10:16:07 +01:00
app Make cached account data/tags/admin types immutable (#16325) 2023-09-18 09:55:04 -04:00
appservice Return immutable objects for cachedList decorators (#16350) 2023-09-19 15:26:44 -04:00
config Add a new module API to update user presence state. (#16544) 2023-10-26 15:11:24 -04:00
crypto Refactor storing of server keys (#16261) 2023-09-12 11:08:04 +01:00
events Add new module API for adding custom fields to events `unsigned` section (#16549) 2023-10-27 09:04:08 +00:00
federation Fix import ordering issue introduced in 7a3a55ac98. 2023-10-31 10:32:35 -04:00
handlers Convert simple_select_one_txn and simple_select_one to return tuples. (#16612) 2023-11-09 11:13:31 -05:00
http Fix http/s proxy authentication with long username/passwords (#16504) 2023-10-24 13:45:21 +00:00
logging Do not call getfullargspec on every call. (#16589) 2023-10-31 20:16:17 +00:00
media Return attrs for more media repo APIs. (#16611) 2023-11-09 11:00:30 -05:00
metrics Support reactor timing metric on more reactors. (#16532) 2023-11-06 08:31:22 -05:00
module_api Convert simple_select_one_txn and simple_select_one to return tuples. (#16612) 2023-11-09 11:13:31 -05:00
push Collect information for PushRuleEvaluator in parallel. (#16590) 2023-11-06 15:41:57 -05:00
replication Add fast path for replication events stream fetch (#16580) 2023-10-30 14:47:57 +00:00
res
rest Fix a long-standing bug where Synapse would not unbind third-party identifiers for Application Service users when deactivated and would not emit a compliant response. (#16617) 2023-11-09 20:18:25 +00:00
server_notices Refactor `get_user_by_id` (#16316) 2023-09-14 12:46:30 +01:00
spam_checker_api
state Improve state types. (#16395) 2023-09-28 07:01:46 -04:00
static
storage Add a Postgres `REPLICA IDENTITY` to tables that do not have an implicit one. This should allow use of Postgres logical replication. (#16456) 2023-11-13 16:03:22 +00:00
streams Allow multiple workers to write to receipts stream. (#16432) 2023-10-25 16:16:19 +01:00
types Allow multiple workers to write to receipts stream. (#16432) 2023-10-25 16:16:19 +01:00
util Collect information for PushRuleEvaluator in parallel. (#16590) 2023-11-06 15:41:57 -05:00
__init__.py
_pydantic_compat.py Add support for pydantic v2 via pydantic.v1 compat module (#16332) 2023-09-25 15:19:08 +00:00
event_auth.py
notifier.py Allow multiple workers to write to receipts stream. (#16432) 2023-10-25 16:16:19 +01:00
py.typed
server.py Add new module API for adding custom fields to events `unsigned` section (#16549) 2023-10-27 09:04:08 +00:00
visibility.py Use StrCollection in additional places. (#16301) 2023-09-13 07:57:19 -04:00