Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5f27ed75ad 
								
							
								 
							
						 
						
							
							
								
								Make purge_history operate on tokens  
							
							 
							
							... 
							
							
							
							As we're soon going to change how topological_ordering works 
							
						 
						
							2018-05-15 16:23:50 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								37dbee6490 
								
							
								 
							
						 
						
							
							
								
								Use events_to_purge table rather than token  
							
							 
							
							
							
						 
						
							2018-05-15 16:23:47 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								31c7c29d43 
								
							
								 
							
						 
						
							
							
								
								Fix up grammar  
							
							 
							
							
							
						 
						
							2018-05-03 10:38:58 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								6e10eed28e 
								
							
								 
							
						 
						
							
							
								
								Refactor event storage to not require state  
							
							 
							
							... 
							
							
							
							This is in preparation for using contexts that may or may not have the
current_state_ids set. This will allow us to avoid unnecessarily pulling
out state for an event on the master process when using workers.
We also add a check to see if the state groups of the old extremities
are the same as the new ones. 
							
						 
						
							2018-04-27 11:38:02 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								b1dfbc3c40 
								
							
								 
							
						 
						
							
							
								
								Refactor store.have_events  
							
							 
							
							... 
							
							
							
							It turns out that most of the time we were calling have_events, we were only
using half of the result. Replace have_events with have_seen_events and
get_rejection_reasons, so that we can see what's going on a bit more clearly. 
							
						 
						
							2018-04-20 10:25:56 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								92e34615c5 
								
							
								 
							
						 
						
							
							
								
								Track where event stream processing have gotten up to  
							
							 
							
							
							
						 
						
							2018-04-11 12:13:40 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								05630758f2 
								
							
								 
							
						 
						
							
							
								
								Use static JSONEncoders  
							
							 
							
							... 
							
							
							
							using json.dumps with custom options requires us to create a new JSONEncoder on
each call. It's more efficient to create one upfront and reuse it. 
							
						 
						
							2018-03-29 23:13:33 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								800cfd5774 
								
							
								 
							
						 
						
							
							
								
								Comment  
							
							 
							
							
							
						 
						
							2018-03-27 13:30:39 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								152c2ac19e 
								
							
								 
							
						 
						
							
							
								
								Fix indent  
							
							 
							
							
							
						 
						
							2018-03-27 13:13:46 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								e70287cff3 
								
							
								 
							
						 
						
							
							
								
								Comment  
							
							 
							
							
							
						 
						
							2018-03-27 13:13:38 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								3f49e131d9 
								
							
								 
							
						 
						
							
							
								
								Add counter metrics for calculating state delta  
							
							 
							
							... 
							
							
							
							This will allow us to measure how often we calculate state deltas in
event persistence that we would have been able to calculate at the same
time we calculated the state for the event. 
							
						 
						
							2018-03-27 10:57:35 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								fa72803490 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of github.com:matrix-org/synapse into develop  
							
							 
							
							
							
						 
						
							2018-03-19 11:41:01 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a8ce159be4 
								
							
								 
							
						 
						
							
							
								
								Replace some ujson with simplejson to make it work  
							
							 
							
							
							
						 
						
							2018-03-16 00:27:09 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5b631ff41a 
								
							
								 
							
						 
						
							
							
								
								Remove wrong comment  
							
							 
							
							
							
						 
						
							2018-03-16 00:07:08 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								926ba76e23 
								
							
								 
							
						 
						
							
							
								
								Replace ujson with simplejson  
							
							 
							
							
							
						 
						
							2018-03-15 23:43:31 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								889a2a853a 
								
							
								 
							
						 
						
							
							
								
								Add Measure block for persist_events  
							
							 
							
							... 
							
							
							
							This seems like a useful thing to measure. 
							
						 
						
							2018-03-13 10:01:42 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								8cb44da4aa 
								
							
								 
							
						 
						
							
							
								
								Fix race in sync when joining room  
							
							 
							
							... 
							
							
							
							The race happens when the user joins a room at the same time as doing a
sync. We fetch the current token and then get the rooms the user is in.
If the join happens after the current token, but before we get the rooms
we end up sending down a partial room entry in the sync.
This is fixed by looking at the stream ordering of the membership
returned by get_rooms_for_user, and handling the case when that stream
ordering is after the current token. 
							
						 
						
							2018-03-07 11:55:31 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								33bebb63f3 
								
							
								 
							
						 
						
							
							
								
								Add some caches to help read marker API  
							
							 
							
							
							
						 
						
							2018-03-01 17:08:17 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								45b5fe9122 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/handle_unpersisted_events_push  
							
							 
							
							
							
						 
						
							2018-02-26 13:49:24 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								eba93b05bf 
								
							
								 
							
						 
						
							
							
								
								Split EventsWorkerStore into separate file  
							
							 
							
							
							
						 
						
							2018-02-23 11:01:21 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								bf8a36e080 
								
							
								 
							
						 
						
							
							
								
								Update copyright  
							
							 
							
							
							
						 
						
							2018-02-23 10:52:10 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5d0f665848 
								
							
								 
							
						 
						
							
							
								
								Remove redundant clock  
							
							 
							
							
							
						 
						
							2018-02-23 10:49:58 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								3bd760628b 
								
							
								 
							
						 
						
							
							
								
								_event_persist_queue shouldn't be in worker store  
							
							 
							
							
							
						 
						
							2018-02-23 10:49:18 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								27b094f382 
								
							
								 
							
						 
						
							
							
								
								Split out get_events and co into a worker store  
							
							 
							
							
							
						 
						
							2018-02-21 11:41:48 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								24087bffa9 
								
							
								 
							
						 
						
							
							
								
								Ensure all push actions are deleted from staging  
							
							 
							
							
							
						 
						
							2018-02-20 12:34:31 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								ad0ccf15ea 
								
							
								 
							
						 
						
							
							
								
								Refactor _set_push_actions_for_event_and_users_txn to use events_and_contexts  
							
							 
							
							
							
						 
						
							2018-02-20 12:34:28 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								d1a3325f99 
								
							
								 
							
						 
						
							
							
								
								(Really) fix tablescan of event_push_actions on purge  
							
							 
							
							... 
							
							
							
							commit 278d21b5  added new code to avoid the tablescan, but didn't remove the
old :/ 
							
						 
						
							2018-02-16 14:02:31 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4810f7effd 
								
							
								 
							
						 
						
							
							
								
								Remove context.push_actions  
							
							 
							
							
							
						 
						
							2018-02-15 15:47:06 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c714c61853 
								
							
								 
							
						 
						
							
							
								
								Update event_push_actions table from staging table  
							
							 
							
							
							
						 
						
							2018-02-15 15:47:06 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								39bf47319f 
								
							
								 
							
						 
						
							
							
								
								purge_history: fix sqlite syntax error  
							
							 
							
							... 
							
							
							
							apparently sqlite insists on indexes being named 
							
						 
						
							2018-02-14 16:42:19 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								ac27f6a35e 
								
							
								 
							
						 
						
							
							
								
								purge_history: handle sqlite asshattery  
							
							 
							
							... 
							
							
							
							apparently creating a temporary table commits the transaction. because that's a
useful thing. 
							
						 
						
							2018-02-14 16:41:12 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								278d21b5e4 
								
							
								 
							
						 
						
							
							
								
								purge_history: fix index use  
							
							 
							
							... 
							
							
							
							event_push_actions doesn't have an index on event_id, so we need to specify
room_id. 
							
						 
						
							2018-02-14 15:44:51 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								5fcbf1e07c 
								
							
								 
							
						 
						
							
							
								
								Rework event purge to use a temporary table  
							
							 
							
							... 
							
							
							
							... which should speed things up by reducing the amount of data being shuffled
across the connection 
							
						 
						
							2018-02-14 11:02:22 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								d627174da2 
								
							
								 
							
						 
						
							
							
								
								Fix log message in purge_history  
							
							 
							
							... 
							
							
							
							(we don't just remove remote events) 
							
						 
						
							2018-02-13 16:51:21 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
								
								
							
							
								
							
								bfdf7b9237 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2864  from matrix-org/rav/persist_event_caching  
							
							 
							
							... 
							
							
							
							Use StateResolutionHandler to resolve state in persist_events 
							
						 
						
							2018-02-13 14:45:57 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
								
								
							
							
								
							
								630caf8a70 
								
									
								
							
								 
							
						 
						
							
							
								
								style nit  
							
							 
							
							
							
						 
						
							2018-02-13 14:29:22 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
								
								
							
							
								
							
								10b34dbb9a 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2858  from matrix-org/rav/purge_updates  
							
							 
							
							... 
							
							
							
							delete_local_events for purge_room_history 
							
						 
						
							2018-02-09 14:11:00 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								39a6b35496 
								
							
								 
							
						 
						
							
							
								
								purge: move room_depth update to end  
							
							 
							
							... 
							
							
							
							... to avoid locking the table for too long 
							
						 
						
							2018-02-09 13:07:41 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								74fcbf741b 
								
							
								 
							
						 
						
							
							
								
								delete_local_events for purge_history  
							
							 
							
							... 
							
							
							
							Add a flag which makes the purger delete local events 
							
						 
						
							2018-02-09 13:07:41 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								e571aef06d 
								
							
								 
							
						 
						
							
							
								
								purge: Move cache invalidation to more appropriate place  
							
							 
							
							... 
							
							
							
							it was a bit of a non-sequitur there 
							
						 
						
							2018-02-09 13:07:41 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								61ffaa8137 
								
							
								 
							
						 
						
							
							
								
								bump purge logging to info  
							
							 
							
							... 
							
							
							
							this thing takes ages and the only sign of any progress is the logs, so having
some logs is useful. 
							
						 
						
							2018-02-09 13:07:41 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								671540dccf 
								
							
								 
							
						 
						
							
							
								
								rename delete_old_state -> purge_history  
							
							 
							
							... 
							
							
							
							(beacause it deletes more than state) 
							
						 
						
							2018-02-09 13:07:41 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
								
								
							
							
								
							
								3d33eef6fc 
								
									
								
							
								 
							
						 
						
							
							
								
								Store state groups separately from events ( #2784 )  
							
							 
							
							... 
							
							
							
							* Split state group persist into seperate storage func
* Add per database engine code for state group id gen
* Move store_state_group to StateReadStore
This allows other workers to use it, and so resolve state.
* Hook up store_state_group
* Fix tests
* Rename _store_mult_state_groups_txn
* Rename StateGroupReadStore
* Remove redundant _have_persisted_state_group_txn
* Update comments
* Comment compute_event_context
* Set start val for state_group_id_seq
... otherwise we try to recreate old state groups
* Update comments
* Don't store state for outliers
* Update comment
* Update docstring as state groups are ints 
							
						 
						
							2018-02-06 14:31:24 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								ebfe64e3d6 
								
							
								 
							
						 
						
							
							
								
								Use StateResolutionHandler to resolve state in persist events  
							
							 
							
							... 
							
							
							
							... and thus benefit (hopefully) from its cache. 
							
						 
						
							2018-02-05 16:23:26 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								225dc3b4cb 
								
							
								 
							
						 
						
							
							
								
								Flatten _get_new_state_after_events  
							
							 
							
							... 
							
							
							
							rejig the if statements to simplify the logic and reduce indentation 
							
						 
						
							2018-02-05 16:23:25 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								9fcbbe8e7d 
								
							
								 
							
						 
						
							
							
								
								Check that events being persisted have state_group  
							
							 
							
							
							
						 
						
							2018-02-05 16:23:25 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								447aed42d2 
								
							
								 
							
						 
						
							
							
								
								Add event_map param to resolve_state_groups  
							
							 
							
							
							
						 
						
							2018-02-05 16:23:25 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								ee6fb4cf85 
								
							
								 
							
						 
						
							
							
								
								Remove redundant return value from _calculate_state_delta  
							
							 
							
							... 
							
							
							
							we already have the state from _get_new_state_after_events, so returning it
from _calculate_state_delta is just confusing. 
							
						 
						
							2018-02-05 16:23:20 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								e1e4ec9f9d 
								
							
								 
							
						 
						
							
							
								
								factor _get_new_state_after_events out of _calculate_state_delta  
							
							 
							
							... 
							
							
							
							This reduces the scope of a bunch of variables 
							
						 
						
							2018-01-31 21:32:09 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								b387ee17b6 
								
							
								 
							
						 
						
							
							
								
								Improve exception handling in persist_event  
							
							 
							
							... 
							
							
							
							1. use `deferred.errback()` instead of `deferred.errback(e)`, which means that
a Failure object will be constructed using the current exception state,
*including* its stack trace - so the stack trace is saved in the Failure,
leading to better exception reports.
2. Set `consumeErrors=True` on the ObservableDeferred, because we know that
there will always be at least one observer - which avoids a spurious "CRITICAL:
unhandled exception in Deferred" error in the logs 
							
						 
						
							2018-01-29 17:05:33 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
								
								
							
							
								
							
								36da256cc6 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2805  from matrix-org/rav/log_state_res  
							
							 
							
							... 
							
							
							
							Log room when doing state resolution 
							
						 
						
							2018-01-17 18:05:04 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								1224612a79 
								
							
								 
							
						 
						
							
							
								
								Log room when doing state resolution  
							
							 
							
							... 
							
							
							
							Mostly because it helps figure out what is prompting the resolution 
							
						 
						
							2018-01-17 17:11:59 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								390093d45e 
								
							
								 
							
						 
						
							
							
								
								Split resolve_events into two functions  
							
							 
							
							... 
							
							
							
							... so that the return type doesn't depend on the arg types 
							
						 
						
							2018-01-17 15:44:31 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								64ddec1bc0 
								
							
								 
							
						 
						
							
							
								
								Fix a logcontext leak in persist_events  
							
							 
							
							... 
							
							
							
							ObserveableDeferred expects its callbacks to be called without any
logcontexts, whereas it turns out we were calling them with the logcontext of
the request which initiated the persistence loop.
It seems wrong that we are attributing work done in the persistence loop to the
request that happened to initiate it, so let's solve this by dropping the
logcontext for it.
(I'm not sure this actually causes any real problems other than messages in the
debug log, but let's clean it up anyway) 
							
						 
						
							2018-01-16 11:47:36 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								6cfee09be9 
								
							
								 
							
						 
						
							
							
								
								Make __init__ consitstent across Store heirarchy  
							
							 
							
							... 
							
							
							
							Add db_conn parameters to the `__init__` methods of the *Store classes, so that
they are all consistent, which makes the multiple inheritance work correctly
(and so that we can later extract mixins which can be used in the slavedstores) 
							
						 
						
							2017-11-13 10:46:07 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								eaaabc6c4f 
								
							
								 
							
						 
						
							
							
								
								replace 'except:' with 'except Exception:'  
							
							 
							
							... 
							
							
							
							what could possibly go wrong 
							
						 
						
							2017-10-23 15:52:32 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								2e9f5ea31a 
								
							
								 
							
						 
						
							
							
								
								Fix logcontext handling for persist_events  
							
							 
							
							... 
							
							
							
							* don't use preserve_context_over_deferred, which is known broken.
* remove a redundant preserve_fn.
* add/improve some comments 
							
						 
						
							2017-10-17 10:59:30 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								11d62f43c9 
								
							
								 
							
						 
						
							
							
								
								Invalidate cache  
							
							 
							
							
							
						 
						
							2017-10-03 14:12:28 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								6ff14ddd2e 
								
							
								 
							
						 
						
							
							
								
								Make into list  
							
							 
							
							
							
						 
						
							2017-06-29 15:47:37 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5946aa0877 
								
							
								 
							
						 
						
							
							
								
								Prefill forward extrems and event to state groups  
							
							 
							
							
							
						 
						
							2017-06-29 15:38:48 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								dfeca6cf40 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2286  from matrix-org/erikj/split_out_user_dir  
							
							 
							
							... 
							
							
							
							Split out user directory to a separate process 
							
						 
						
							2017-06-16 13:01:19 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								6aa5bc8635 
								
							
								 
							
						 
						
							
							
								
								Initial worker impl  
							
							 
							
							
							
						 
						
							2017-06-16 11:47:11 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								052c5d19d5 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2281  from matrix-org/erikj/phone_home_stats  
							
							 
							
							... 
							
							
							
							Fix phone home stats 
							
						 
						
							2017-06-15 12:46:23 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4b461a6931 
								
							
								 
							
						 
						
							
							
								
								Add some more stats  
							
							 
							
							
							
						 
						
							2017-06-15 09:39:39 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								617304b2cf 
								
							
								 
							
						 
						
							
							
								
								Fix phone home stats  
							
							 
							
							
							
						 
						
							2017-06-14 19:47:15 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								d53fe399eb 
								
							
								 
							
						 
						
							
							
								
								Add cache for is_host_joined  
							
							 
							
							
							
						 
						
							2017-06-13 09:56:18 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c62c480dc6 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2259  from matrix-org/erikj/fix_state_woes  
							
							 
							
							... 
							
							
							
							Fix bug where state_group tables got corrupted 
							
						 
						
							2017-06-07 17:51:25 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								197bd126f0 
								
							
								 
							
						 
						
							
							
								
								Fix bug where state_group tables got corrupted  
							
							 
							
							... 
							
							
							
							This is due to the fact that we prefilled caches using txn.call_after,
which always gets called including on error.
We fix this by making txn.call_after only fire when a transaction
completes successfully, which is what we want most of the time anyway. 
							
						 
						
							2017-06-07 17:39:36 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4abcff0177 
								
							
								 
							
						 
						
							
							
								
								Fix typo  
							
							 
							
							
							
						 
						
							2017-05-31 16:22:36 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								304880d185 
								
							
								 
							
						 
						
							
							
								
								Add stream change cache  
							
							 
							
							
							
						 
						
							2017-05-31 15:46:36 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								04095f7581 
								
							
								 
							
						 
						
							
							
								
								Add clobbered event_id  
							
							 
							
							
							
						 
						
							2017-05-30 14:53:01 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a584a81b3e 
								
							
								 
							
						 
						
							
							
								
								Add current_state_delta_stream table  
							
							 
							
							
							
						 
						
							2017-05-30 14:44:09 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c049472b8a 
								
							
								 
							
						 
						
							
							
								
								Only store event_auth for state events  
							
							 
							
							
							
						 
						
							2017-05-24 15:23:31 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								b8492b6c2f 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2224  from matrix-org/erikj/prefill_state  
							
							 
							
							... 
							
							
							
							Prefill state caches 
							
						 
						
							2017-05-16 15:50:11 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								331570ea6f 
								
							
								 
							
						 
						
							
							
								
								Remove spurious merge artifacts  
							
							 
							
							
							
						 
						
							2017-05-16 15:33:07 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								871605f4e2 
								
							
								 
							
						 
						
							
							
								
								Comments  
							
							 
							
							
							
						 
						
							2017-05-15 15:11:30 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								e0d2f6d5b0 
								
							
								 
							
						 
						
							
							
								
								Add more granular event send metrics  
							
							 
							
							
							
						 
						
							2017-05-15 15:11:30 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								bfbc907cec 
								
							
								 
							
						 
						
							
							
								
								Prefill state caches  
							
							 
							
							
							
						 
						
							2017-05-15 15:11:13 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								34194aaff7 
								
							
								 
							
						 
						
							
							
								
								Don't create event_search index on sqlite  
							
							 
							
							... 
							
							
							
							... because the table is virtual 
							
						 
						
							2017-05-11 12:46:55 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								114f290947 
								
							
								 
							
						 
						
							
							
								
								Add more logging for purging  
							
							 
							
							... 
							
							
							
							Log the number of events we will be deleting at info. 
							
						 
						
							2017-05-11 12:08:47 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								baafb85ba4 
								
							
								 
							
						 
						
							
							
								
								Add an index to event_search  
							
							 
							
							... 
							
							
							
							- to make the purge API quicker 
							
						 
						
							2017-05-11 12:05:22 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								dc026bb16f 
								
							
								 
							
						 
						
							
							
								
								Tidy purge code and add some comments  
							
							 
							
							... 
							
							
							
							Try to make this clearer with more comments and some variable renames 
							
						 
						
							2017-05-11 10:56:12 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								8e345ce465 
								
							
								 
							
						 
						
							
							
								
								Don't de-delta state groups we're about to delete  
							
							 
							
							
							
						 
						
							2017-05-10 18:44:22 +01:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								b64d312421 
								
							
								 
							
						 
						
							
							
								
								add some logging to purge_history  
							
							 
							
							
							
						 
						
							2017-05-10 18:44:22 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								093f7e47cc 
								
							
								 
							
						 
						
							
							
								
								Expand docstring a bit  
							
							 
							
							
							
						 
						
							2017-05-08 16:14:46 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								ffad4fe35b 
								
							
								 
							
						 
						
							
							
								
								Don't update event cache hit ratio from get_joined_users  
							
							 
							
							... 
							
							
							
							Otherwise the hit ration of plain get_events gets completely skewed by
calls to get_joined_users* functions. 
							
						 
						
							2017-05-08 16:06:17 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								587f07543f 
								
							
								 
							
						 
						
							
							
								
								Revert "Prefill state caches"  
							
							 
							
							
							
						 
						
							2017-05-04 15:07:27 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								1827057acc 
								
							
								 
							
						 
						
							
							
								
								Comments  
							
							 
							
							
							
						 
						
							2017-05-03 09:56:05 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								8346e6e696 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/prefill_state  
							
							 
							
							
							
						 
						
							2017-05-03 09:46:40 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								3e5a62ecd8 
								
							
								 
							
						 
						
							
							
								
								Add more granular event send metrics  
							
							 
							
							
							
						 
						
							2017-05-02 14:23:26 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a2c89a225c 
								
							
								 
							
						 
						
							
							
								
								Prefill state caches  
							
							 
							
							
							
						 
						
							2017-05-02 10:40:31 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Barnard
							
						 
						
							 
							
							
							
								
							
								6a70647d45 
								
							
								 
							
						 
						
							
							
								
								Correct logic in is_event_after  
							
							 
							
							
							
						 
						
							2017-04-13 13:46:17 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Barnard
							
						 
						
							 
							
							
							
								
							
								b9557064bf 
								
							
								 
							
						 
						
							
							
								
								Simplify is_event_after logic  
							
							 
							
							
							
						 
						
							2017-04-12 14:36:20 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Barnard
							
						 
						
							 
							
							
							
								
							
								7f94709066 
								
							
								 
							
						 
						
							
							
								
								travis flake8..  
							
							 
							
							
							
						 
						
							2017-04-11 18:35:45 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Barnard
							
						 
						
							 
							
							
							
								
							
								73880268ef 
								
							
								 
							
						 
						
							
							
								
								Refactor event ordering check to events store  
							
							 
							
							
							
						 
						
							2017-04-11 17:34:09 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								24d35ab47b 
								
							
								 
							
						 
						
							
							
								
								Add new storage functions for new replication  
							
							 
							
							... 
							
							
							
							The new replication protocol will keep all the streams separate, rather
than muxing multiple streams into one. 
							
						 
						
							2017-03-30 11:48:35 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								bac9bf1b12 
								
							
								 
							
						 
						
							
							
								
								Typo  
							
							 
							
							
							
						 
						
							2017-03-27 18:02:17 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								d82c42837f 
								
							
								 
							
						 
						
							
							
								
								Short circuit if all new events have same state group  
							
							 
							
							
							
						 
						
							2017-03-27 18:00:47 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								e71940aa64 
								
							
								 
							
						 
						
							
							
								
								Use iter(items|values)  
							
							 
							
							
							
						 
						
							2017-03-24 10:57:02 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								00957d1aa4 
								
							
								 
							
						 
						
							
							
								
								User Cursor.__iter__ instead of fetchall  
							
							 
							
							... 
							
							
							
							This prevents unnecessary construction of lists 
							
						 
						
							2017-03-23 17:53:49 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								37a187bfab 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2033  from matrix-org/erikj/repl_speed  
							
							 
							
							... 
							
							
							
							Don't send the full event json over replication 
							
						 
						
							2017-03-21 13:11:15 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								61f471f779 
								
							
								 
							
						 
						
							
							
								
								Don't send the full event json over replication  
							
							 
							
							
							
						 
						
							2017-03-17 15:50:01 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								0c01f829ae 
								
							
								 
							
						 
						
							
							
								
								Avoid resetting state on rejected events  
							
							 
							
							... 
							
							
							
							When we get a rejected event, give it the same state_group as its prev_event,
rather than no state_group at all.
This should fix https://github.com/matrix-org/synapse/issues/1935 . 
							
						 
						
							2017-03-17 15:06:08 +00:00  
						
					 
				
					
						
							
							
								 
								Richard van der Hoff
							
						 
						
							 
							
							
							
								
							
								5068fb16a5 
								
							
								 
							
						 
						
							
							
								
								Refactoring and cleanups  
							
							 
							
							... 
							
							
							
							A few non-functional changes:
* A bunch of docstrings to document types
* Split `EventsStore._persist_events_txn` up a bit. Hopefully it's a bit more
  readable.
* Rephrase `EventFederationStore._update_min_depth_for_room_txn` to avoid
  mind-bending conditional.
* Rephrase rejected/outlier conditional in `_update_outliers_txn` to avoid
  mind-bending conditional. 
							
						 
						
							2017-03-17 15:06:07 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								bb256ac96f 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/public_list_speed  
							
							 
							
							
							
						 
						
							2017-03-14 11:35:05 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								cc7a294e2e 
								
							
								 
							
						 
						
							
							
								
								Fix current_state_events table to not lie  
							
							 
							
							... 
							
							
							
							If we try and persist two state events that have the same ancestor we
calculate the wrong current state when persisting those events. 
							
						 
						
							2017-03-14 10:57:43 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								8ffbe43ba1 
								
							
								 
							
						 
						
							
							
								
								Get current state by using current_state_events table  
							
							 
							
							
							
						 
						
							2017-03-10 17:39:35 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a41dce8f8a 
								
							
								 
							
						 
						
							
							
								
								Remove needless check  
							
							 
							
							
							
						 
						
							2017-02-27 18:54:43 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c0d6045776 
								
							
								 
							
						 
						
							
							
								
								It should be all  
							
							 
							
							
							
						 
						
							2017-02-27 18:45:24 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								49f4bc4709 
								
							
								 
							
						 
						
							
							
								
								Don't fetch current state in common case  
							
							 
							
							... 
							
							
							
							Currently we fetch the list of current state events whenever we send
something in a room. This is overkill for the common case of persisting
a simple chain of non-state events, so lets handle that case specially. 
							
						 
						
							2017-02-27 18:33:41 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								7723b4caa4 
								
							
								 
							
						 
						
							
							
								
								Ignore new rejected events when working out forward extremeties.  
							
							 
							
							
							
						 
						
							2017-02-08 14:48:06 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								ebfaff84c9 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1870  from matrix-org/erikj/cache_get_all_new_events  
							
							 
							
							... 
							
							
							
							Add a small cache get_all_new_events 
							
						 
						
							2017-02-01 13:22:02 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								368c88c487 
								
							
								 
							
						 
						
							
							
								
								Add a small cache get_all_new_events  
							
							 
							
							
							
						 
						
							2017-02-01 10:50:44 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								458b6f4733 
								
							
								 
							
						 
						
							
							
								
								Only invalidate membership caches based on the cache stream  
							
							 
							
							... 
							
							
							
							Before we completely invalidated get_users_in_room whenever we updated
any current_state_events table. This was way too aggressive. 
							
						 
						
							2017-01-31 16:09:03 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4b3403ca9b 
								
							
								 
							
						 
						
							
							
								
								Stream cache invalidations for room membership storage functions  
							
							 
							
							
							
						 
						
							2017-01-30 17:28:22 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								fdf2a31a51 
								
							
								 
							
						 
						
							
							
								
								Typo  
							
							 
							
							
							
						 
						
							2017-01-23 16:14:14 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c77b24c092 
								
							
								 
							
						 
						
							
							
								
								Refactor to calculate state delta outside transaction  
							
							 
							
							
							
						 
						
							2017-01-23 14:51:33 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5d2134d485 
								
							
								 
							
						 
						
							
							
								
								Comments  
							
							 
							
							
							
						 
						
							2017-01-20 17:13:24 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a55fa2047f 
								
							
								 
							
						 
						
							
							
								
								Insert delta of current_state_events to be more efficient  
							
							 
							
							
							
						 
						
							2017-01-20 17:10:18 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								d0897dead5 
								
							
								 
							
						 
						
							
							
								
								Spelling  
							
							 
							
							
							
						 
						
							2017-01-20 15:05:11 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								567aa35b67 
								
							
								 
							
						 
						
							
							
								
								Update all call sites after rename  
							
							 
							
							
							
						 
						
							2017-01-20 14:40:31 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								f2f40e64a9 
								
							
								 
							
						 
						
							
							
								
								Comments  
							
							 
							
							
							
						 
						
							2017-01-20 14:38:13 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4c6a31cd6e 
								
							
								 
							
						 
						
							
							
								
								Calculate the forward extremeties once  
							
							 
							
							
							
						 
						
							2017-01-20 14:28:53 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								09eb08f910 
								
							
								 
							
						 
						
							
							
								
								Derive current_state_events from state groups  
							
							 
							
							
							
						 
						
							2017-01-20 11:52:51 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4ec1cf49e2 
								
							
								 
							
						 
						
							
							
								
								Lower loading events log to DEBUG  
							
							 
							
							
							
						 
						
							2017-01-17 17:28:32 +00:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								dd3df11c55 
								
							
								 
							
						 
						
							
							
								
								More logging for the linearizer and for get_events  
							
							 
							
							
							
						 
						
							2017-01-05 12:32:47 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								f9d156d270 
								
							
								 
							
						 
						
							
							
								
								New Flake8 fixes  
							
							 
							
							
							
						 
						
							2016-11-15 11:22:29 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								816988baaa 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/remove_auth  
							
							 
							
							
							
						 
						
							2016-10-17 11:10:37 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								2869a29fd7 
								
							
								 
							
						 
						
							
							
								
								Drop some unused indices  
							
							 
							
							
							
						 
						
							2016-10-17 11:08:19 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								9040c9ffa1 
								
							
								 
							
						 
						
							
							
								
								Fix background reindex of origin_server_ts  
							
							 
							
							... 
							
							
							
							The storage function `_get_events_txn` was removed everywhere except
from this background reindex. The function was removed due to it being
(almost) completely unused while also being large and complex.
Therefore, instead of resurrecting `_get_events_txn` we manually
reimplement the bits that are needed directly. 
							
						 
						
							2016-09-27 11:23:49 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								0b32bb20bb 
								
							
								 
							
						 
						
							
							
								
								Index contains_url for file search queries  
							
							 
							
							
							
						 
						
							2016-09-12 16:57:05 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								70332a12dd 
								
							
								 
							
						 
						
							
							
								
								Take value in a better way  
							
							 
							
							
							
						 
						
							2016-09-05 14:57:14 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								485d999c8a 
								
							
								 
							
						 
						
							
							
								
								Correctly delete old state groups in purge history API  
							
							 
							
							
							
						 
						
							2016-09-05 14:49:08 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								598317927c 
								
							
								 
							
						 
						
							
							
								
								Limit the length of state chains  
							
							 
							
							
							
						 
						
							2016-09-02 10:41:38 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								1bb8ec296d 
								
							
								 
							
						 
						
							
							
								
								Generate state group ids in state layer  
							
							 
							
							
							
						 
						
							2016-08-31 10:09:46 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5dc2a702cf 
								
							
								 
							
						 
						
							
							
								
								Make _state_groups_id_gen a normal IdGenerator  
							
							 
							
							
							
						 
						
							2016-08-30 16:55:11 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								bed10f9880 
								
							
								 
							
						 
						
							
							
								
								Use state handler instead of get_users_in_room/get_joined_hosts  
							
							 
							
							
							
						 
						
							2016-08-26 14:54:30 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								9219139351 
								
							
								 
							
						 
						
							
							
								
								Preserve some logcontexts  
							
							 
							
							
							
						 
						
							2016-08-24 11:58:40 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								37adde32dc 
								
							
								 
							
						 
						
							
							
								
								Move defer.returnValue out of Measure  
							
							 
							
							
							
						 
						
							2016-08-19 18:23:44 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								47dd8f02a1 
								
							
								 
							
						 
						
							
							
								
								Measure _get_event_from_row  
							
							 
							
							
							
						 
						
							2016-08-19 18:23:44 +01:00  
						
					 
				
					
						
							
							
								 
								Benjamin Saunders
							
						 
						
							 
							
							
							
								
							
								8a57cc3123 
								
							
								 
							
						 
						
							
							
								
								Add missing database corruption recovery case  
							
							 
							
							... 
							
							
							
							Signed-off-by: Benjamin Saunders <ben.e.saunders@gmail.com> 
							
						 
						
							2016-08-14 11:50:22 -07:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a8b946decb 
								
							
								 
							
						 
						
							
							
								
								Raise 404 when couldn't find event  
							
							 
							
							
							
						 
						
							2016-08-05 15:31:02 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								f0fa66f495 
								
							
								 
							
						 
						
							
							
								
								Delete more tables  
							
							 
							
							
							
						 
						
							2016-08-05 10:40:08 +01:00  
						
					 
				
					
						
							
							
								 
								Benjamin Saunders
							
						 
						
							 
							
							
							
								
							
								a2b7102eea 
								
							
								 
							
						 
						
							
							
								
								Tweak integrity error recovery to work as intended  
							
							 
							
							
							
						 
						
							2016-08-04 20:38:08 -07:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								8ad8490cff 
								
							
								 
							
						 
						
							
							
								
								Fix typo  
							
							 
							
							
							
						 
						
							2016-08-04 15:21:29 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								59fa91fe88 
								
							
								 
							
						 
						
							
							
								
								Retry event persistence on IntegrityError  
							
							 
							
							... 
							
							
							
							Due to a bug in the porting script some backfilled events were not
correctly persisted, causing irrecoverable IntegrityErrors on future
attempts to persist those events.
This commit adds a retry mechanism invoked upon IntegrityError,
where when retried the tables are purged for all references to the
events being persisted. 
							
						 
						
							2016-08-04 15:02:15 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								80ad710217 
								
							
								 
							
						 
						
							
							
								
								Remove other bit of deduplication  
							
							 
							
							
							
						 
						
							2016-08-03 13:25:59 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a8a32d2714 
								
							
								 
							
						 
						
							
							
								
								Ensure we only persist an event once at a time  
							
							 
							
							
							
						 
						
							2016-08-03 11:23:39 +01:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								a6f06ce3e2 
								
							
								 
							
						 
						
							
							
								
								Fix how push_actions are redacted.  
							
							 
							
							
							
						 
						
							2016-07-26 11:05:39 +01:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								efeb6176c1 
								
							
								 
							
						 
						
							
							
								
								Don't add rejected events if we've seen them befrore. Add some comments to explain what the code is doing mechanically  
							
							 
							
							
							
						 
						
							2016-07-26 10:49:52 +01:00