c936a52a9e 
								
									
								
							
								 
							
						 
						
							
							
								
								Consistently use six's iteritems and wrap lazy keys/values in list() if they're not meant to be lazy ( #3307 )  
							
							
							
						 
						
							2018-05-31 19:03:47 +10:00  
				
					
						
							
							
								 
						
							
							
								53cc2cde1f 
								
							
								 
							
						 
						
							
							
								
								cleanup  
							
							
							
						 
						
							2018-05-22 17:32:57 -05:00  
				
					
						
							
							
								 
						
							
							
								a8990fa2ec 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/develop' into 3218-official-prom  
							
							
							
						 
						
							2018-05-22 10:50:26 -05:00  
				
					
						
							
							
								 
						
							
							
								fcc525b0b7 
								
							
								 
							
						 
						
							
							
								
								rest of the changes  
							
							
							
						 
						
							2018-05-21 19:48:57 -05:00  
				
					
						
							
							
								 
						
							
							
								680530cc7f 
								
							
								 
							
						 
						
							
							
								
								Clarify comment  
							
							
							
						 
						
							2018-05-16 11:47:29 +01:00  
				
					
						
							
							
								 
						
							
							
								43e6e82c4d 
								
							
								 
							
						 
						
							
							
								
								Comments  
							
							
							
						 
						
							2018-05-16 11:13:31 +01:00  
				
					
						
							
							
								 
						
							
							
								c945af8799 
								
							
								 
							
						 
						
							
							
								
								Move and rename variable  
							
							
							
						 
						
							2018-05-16 10:52:06 +01:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								37dbee6490 
								
							
								 
							
						 
						
							
							
								
								Use events_to_purge table rather than token  
							
							
							
						 
						
							2018-05-15 16:23:47 +01:00  
				
					
						
							
							
								 
						
							
							
								31c7c29d43 
								
							
								 
							
						 
						
							
							
								
								Fix up grammar  
							
							
							
						 
						
							2018-05-03 10:38:58 +01:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								92e34615c5 
								
							
								 
							
						 
						
							
							
								
								Track where event stream processing have gotten up to  
							
							
							
						 
						
							2018-04-11 12:13:40 +01:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								800cfd5774 
								
							
								 
							
						 
						
							
							
								
								Comment  
							
							
							
						 
						
							2018-03-27 13:30:39 +01:00  
				
					
						
							
							
								 
						
							
							
								152c2ac19e 
								
							
								 
							
						 
						
							
							
								
								Fix indent  
							
							
							
						 
						
							2018-03-27 13:13:46 +01:00  
				
					
						
							
							
								 
						
							
							
								e70287cff3 
								
							
								 
							
						 
						
							
							
								
								Comment  
							
							
							
						 
						
							2018-03-27 13:13:38 +01:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								fa72803490 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of github.com:matrix-org/synapse into develop  
							
							
							
						 
						
							2018-03-19 11:41:01 +00:00  
				
					
						
							
							
								 
						
							
							
								a8ce159be4 
								
							
								 
							
						 
						
							
							
								
								Replace some ujson with simplejson to make it work  
							
							
							
						 
						
							2018-03-16 00:27:09 +00:00  
				
					
						
							
							
								 
						
							
							
								5b631ff41a 
								
							
								 
							
						 
						
							
							
								
								Remove wrong comment  
							
							
							
						 
						
							2018-03-16 00:07:08 +00:00  
				
					
						
							
							
								 
						
							
							
								926ba76e23 
								
							
								 
							
						 
						
							
							
								
								Replace ujson with simplejson  
							
							
							
						 
						
							2018-03-15 23:43:31 +00:00  
				
					
						
							
							
								 
						
							
							
								889a2a853a 
								
							
								 
							
						 
						
							
							
								
								Add Measure block for persist_events  
							
							... 
							
							
							
							This seems like a useful thing to measure. 
							
						 
						
							2018-03-13 10:01:42 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								33bebb63f3 
								
							
								 
							
						 
						
							
							
								
								Add some caches to help read marker API  
							
							
							
						 
						
							2018-03-01 17:08:17 +00:00  
				
					
						
							
							
								 
						
							
							
								45b5fe9122 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/handle_unpersisted_events_push  
							
							
							
						 
						
							2018-02-26 13:49:24 +00:00  
				
					
						
							
							
								 
						
							
							
								eba93b05bf 
								
							
								 
							
						 
						
							
							
								
								Split EventsWorkerStore into separate file  
							
							
							
						 
						
							2018-02-23 11:01:21 +00:00  
				
					
						
							
							
								 
						
							
							
								bf8a36e080 
								
							
								 
							
						 
						
							
							
								
								Update copyright  
							
							
							
						 
						
							2018-02-23 10:52:10 +00:00  
				
					
						
							
							
								 
						
							
							
								5d0f665848 
								
							
								 
							
						 
						
							
							
								
								Remove redundant clock  
							
							
							
						 
						
							2018-02-23 10:49:58 +00:00  
				
					
						
							
							
								 
						
							
							
								3bd760628b 
								
							
								 
							
						 
						
							
							
								
								_event_persist_queue shouldn't be in worker store  
							
							
							
						 
						
							2018-02-23 10:49:18 +00:00  
				
					
						
							
							
								 
						
							
							
								27b094f382 
								
							
								 
							
						 
						
							
							
								
								Split out get_events and co into a worker store  
							
							
							
						 
						
							2018-02-21 11:41:48 +00:00  
				
					
						
							
							
								 
						
							
							
								24087bffa9 
								
							
								 
							
						 
						
							
							
								
								Ensure all push actions are deleted from staging  
							
							
							
						 
						
							2018-02-20 12:34:31 +00:00  
				
					
						
							
							
								 
						
							
							
								ad0ccf15ea 
								
							
								 
							
						 
						
							
							
								
								Refactor _set_push_actions_for_event_and_users_txn to use events_and_contexts  
							
							
							
						 
						
							2018-02-20 12:34:28 +00:00  
				
					
						
							
							
								 
						
							
							
								d1a3325f99 
								
							
								 
							
						 
						
							
							
								
								(Really) fix tablescan of event_push_actions on purge  
							
							... 
							
							
							
							commit 278d21b5 
							
						 
						
							2018-02-16 14:02:31 +00:00  
				
					
						
							
							
								 
						
							
							
								4810f7effd 
								
							
								 
							
						 
						
							
							
								
								Remove context.push_actions  
							
							
							
						 
						
							2018-02-15 15:47:06 +00:00  
				
					
						
							
							
								 
						
							
							
								c714c61853 
								
							
								 
							
						 
						
							
							
								
								Update event_push_actions table from staging table  
							
							
							
						 
						
							2018-02-15 15:47:06 +00:00  
				
					
						
							
							
								 
						
							
							
								39bf47319f 
								
							
								 
							
						 
						
							
							
								
								purge_history: fix sqlite syntax error  
							
							... 
							
							
							
							apparently sqlite insists on indexes being named 
							
						 
						
							2018-02-14 16:42:19 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								d627174da2 
								
							
								 
							
						 
						
							
							
								
								Fix log message in purge_history  
							
							... 
							
							
							
							(we don't just remove remote events) 
							
						 
						
							2018-02-13 16:51:21 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								630caf8a70 
								
									
								
							
								 
							
						 
						
							
							
								
								style nit  
							
							
							
						 
						
							2018-02-13 14:29:22 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								39a6b35496 
								
							
								 
							
						 
						
							
							
								
								purge: move room_depth update to end  
							
							... 
							
							
							
							... to avoid locking the table for too long 
							
						 
						
							2018-02-09 13:07:41 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								671540dccf 
								
							
								 
							
						 
						
							
							
								
								rename delete_old_state -> purge_history  
							
							... 
							
							
							
							(beacause it deletes more than state) 
							
						 
						
							2018-02-09 13:07:41 +00:00  
				
					
						
							
							
								 
						
							
							
								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