synapse-product/synapse/storage
Erik Johnston ac11fcbbb8
Add EventStreamPosition type (#8388)
The idea is to remove some of the places we pass around `int`, where it can represent one of two things:

1. the position of an event in the stream; or
2. a token that partitions the stream, used as part of the stream tokens.

The valid operations are then:

1. did a position happen before or after a token;
2. get all events that happened before or after a token; and
3. get all events between two tokens.

(Note that we don't want to allow other operations as we want to change the tokens to be vector clocks rather than simple ints)
2020-09-24 13:24:17 +01:00
..
databases Add EventStreamPosition type (#8388) 2020-09-24 13:24:17 +01:00
engines Use SequenceGenerator for state group ID allocation 2020-07-16 11:25:08 +01:00
schema Only run one background update at a time 2020-03-31 17:43:58 +01:00
util Use async with for ID gens (#8383) 2020-09-23 16:11:18 +01:00
__init__.py Make StreamToken.room_key be a RoomStreamToken instance. (#8281) 2020-09-11 12:22:55 +01:00
_base.py Be stricter about JSON that is accepted by Synapse (#8106) 2020-08-19 07:26:03 -04:00
background_updates.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
database.py Catch-up after Federation Outage (split, 1) (#8230) 2020-09-04 12:22:23 +01:00
keys.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
persist_events.py Add EventStreamPosition type (#8388) 2020-09-24 13:24:17 +01:00
prepare_database.py Use slots in attrs classes where possible (#8296) 2020-09-14 12:50:06 -04:00
purge_events.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
push_rule.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
relations.py Use slots in attrs classes where possible (#8296) 2020-09-14 12:50:06 -04:00
roommember.py Add EventStreamPosition type (#8388) 2020-09-24 13:24:17 +01:00
state.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
types.py isort 5 compatibility (#7786) 2020-07-05 16:32:02 +01:00