forked-synapse/synapse/storage
Mark Haines 60a0f81c7a Add a /replication API for extracting the updates that happened on
synapse

This is necessary for replicating the data in synapse to be visible to a
separate service because presence and typing notifications aren't stored
in a database so won't be visible to another process.

This API can be used to either get the raw data by requesting the tables
themselves or to just receive notifications for updates by following the
streams meta-stream.

Returns updates for each table requested a JSON array of arrays with a
row for each row in the table.

Each table is prefixed by a header row with the: name of the table,
current stream_id position for the table, number of rows, number of
columns and the names of the columns.
This is followed by the rows that have been added to the server since
the requester last asked.

The API has a timeout and is hooked up to the notifier so that a slave
can long poll for updates.
2016-03-01 14:49:41 +00:00
..
engines Fix flake8 warnings for new flake8 2016-02-02 17:18:50 +00:00
schema Generate guest access token on 3pid invites 2016-02-24 14:41:25 +00:00
util Remove unused param from get_max_token 2016-02-18 16:37:28 +00:00
__init__.py Close cursor 2016-02-18 16:39:28 +00:00
_base.py Fix up logcontexts 2016-02-08 14:26:45 +00:00
account_data.py Add a /replication API for extracting the updates that happened on 2016-03-01 14:49:41 +00:00
appservice.py Add descriptions 2016-02-03 16:22:35 +00:00
background_updates.py copyrights 2016-01-07 04:26:29 +00:00
directory.py copyrights 2016-01-07 04:26:29 +00:00
end_to_end_keys.py copyrights 2016-01-07 04:26:29 +00:00
event_federation.py Respond to federated invite with non-empty context 2016-02-17 15:25:12 +00:00
event_push_actions.py Remove dead code for setting device specific rules. 2016-02-18 16:05:13 +00:00
events.py Add a /replication API for extracting the updates that happened on 2016-03-01 14:49:41 +00:00
filtering.py Cache filters 2016-01-28 17:09:09 +00:00
keys.py Add descriptions 2016-02-03 16:22:35 +00:00
media_repository.py copyrights 2016-01-07 04:26:29 +00:00
prepare_database.py Initial cut 2016-02-17 15:40:50 +00:00
presence.py Add a /replication API for extracting the updates that happened on 2016-03-01 14:49:41 +00:00
profile.py copyrights 2016-01-07 04:26:29 +00:00
push_rule.py Add support for changing the actions for default rules 2016-02-26 14:28:19 +00:00
pusher.py Remove dead code for setting device specific rules. 2016-02-18 16:05:13 +00:00
receipts.py Add a /replication API for extracting the updates that happened on 2016-03-01 14:49:41 +00:00
registration.py Generate guest access token on 3pid invites 2016-02-24 14:41:25 +00:00
rejections.py copyrights 2016-01-07 04:26:29 +00:00
room.py Simplify get_rooms 2016-02-03 13:24:35 +00:00
roommember.py Cache get_room_changes_for_user 2016-01-29 16:52:48 +00:00
search.py copyrights 2016-01-07 04:26:29 +00:00
signatures.py copyrights 2016-01-07 04:26:29 +00:00
state.py Batch fetch _get_state_groups_from_groups 2016-02-10 13:24:42 +00:00
stream.py Remove unused param from get_max_token 2016-02-18 16:37:28 +00:00
tags.py Add a /replication API for extracting the updates that happened on 2016-03-01 14:49:41 +00:00
transactions.py Delete the table objects from TransactionStore 2016-01-13 11:15:20 +00:00