d386f2f339 
								
									
								
							
								 
							
						 
						
							
							
								
								Add StateMap type alias ( #6715 )  
							
							
							
						 
						
							2020-01-16 13:31:22 +00:00  
				
					
						
							
							
								 
						
							
							
								75d8f26ac8 
								
									
								
							
								 
							
						 
						
							
							
								
								Split state groups into a separate data store ( #6296 )  
							
							
							
						 
						
							2019-12-20 10:48:24 +00:00  
				
					
						
							
							
								 
						
							
							
								64f2b8c3d8 
								
									
								
							
								 
							
						 
						
							
							
								
								Apply suggestions from code review  
							
							... 
							
							
							
							Fix docstring
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> 
							
						 
						
							2019-10-31 15:44:31 +01:00  
				
					
						
							
							
								 
						
							
							
								5db03535d5 
								
							
								 
							
						 
						
							
							
								
								Add StateGroupStorage interface  
							
							
							
						 
						
							2019-10-30 14:46:49 +00:00  
				
					
						
							
							
								 
						
							
							
								c66a06ac6b 
								
							
								 
							
						 
						
							
							
								
								Move storage classes into a main "data store".  
							
							... 
							
							
							
							This is in preparation for having multiple data stores that offer
different functionality, e.g. splitting out state or event storage. 
							
						 
						
							2019-10-21 16:05:06 +01:00  
				
					
						
							
							
								 
						
							
							
								66ebea1723 
								
							
								 
							
						 
						
							
							
								
								Lint  
							
							
							
						 
						
							2019-10-07 17:44:41 +01:00  
				
					
						
							
							
								 
						
							
							
								cfccd2d78a 
								
							
								 
							
						 
						
							
							
								
								Move state's bg updates to a dedicated store  
							
							
							
						 
						
							2019-10-07 17:34:39 +01:00  
				
					
						
							
							
								 
						
							
							
								4806651744 
								
									
								
							
								 
							
						 
						
							
							
								
								Replace returnValue with return ( #5736 )  
							
							
							
						 
						
							2019-07-23 23:00:55 +10:00  
				
					
						
							
							
								 
						
							
							
								10523241d8 
								
							
								 
							
						 
						
							
							
								
								Delegate to cached version when using get_filtered_current_state_ids  
							
							... 
							
							
							
							In the case where it gets called with `StateFilter.all()` 
							
						 
						
							2019-07-18 15:17:39 +01:00  
				
					
						
							
							
								 
						
							
							
								7efd1d87c2 
								
							
								 
							
						 
						
							
							
								
								Run black on the rest of the storage module ( #4996 )  
							
							
							
						 
						
							2019-04-03 10:07:29 +01:00  
				
					
						
							
							
								 
						
							
							
								eaf4d11af9 
								
							
								 
							
						 
						
							
							
								
								Add configurable room list publishing rules  
							
							... 
							
							
							
							This allows specifying who and what is allowed to be published onto the
public room list 
							
						 
						
							2019-02-14 16:02:23 +00:00  
				
					
						
							
							
								 
						
							
							
								d239f67c25 
								
							
								 
							
						 
						
							
							
								
								Raise an exception instead of returning None  
							
							
							
						 
						
							2019-01-31 18:34:15 +00:00  
				
					
						
							
							
								 
						
							
							
								3ed3cb4339 
								
							
								 
							
						 
						
							
							
								
								New function for getting room's create event  
							
							
							
						 
						
							2019-01-31 18:21:39 +00:00  
				
					
						
							
							
								 
						
							
							
								a383289b0d 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'anoa/full_search_upgraded_rooms' of github.com:matrix-org/synapse into anoa/full_search_upgraded_rooms  
							
							
							
						 
						
							2019-01-24 17:23:51 +00:00  
				
					
						
							
							
								 
						
							
							
								e1781b043b 
								
							
								 
							
						 
						
							
							
								
								Remove redundant create event None check  
							
							
							
						 
						
							2019-01-24 17:23:39 +00:00  
				
					
						
							
							
								 
						
							
							
								03c85335d1 
								
									
								
							
								 
							
						 
						
							
							
								
								Apply suggestions from code review  
							
							... 
							
							
							
							Co-Authored-By: anoadragon453 <1342360+anoadragon453@users.noreply.github.com> 
							
						 
						
							2019-01-24 17:22:09 +00:00  
				
					
						
							
							
								 
						
							
							
								277e50462d 
								
							
								 
							
						 
						
							
							
								
								Do not return in a deferred function  
							
							
							
						 
						
							2019-01-22 12:40:26 +00:00  
				
					
						
							
							
								 
						
							
							
								c433f61091 
								
							
								 
							
						 
						
							
							
								
								Ensure new filter is actually created  
							
							
							
						 
						
							2019-01-22 12:06:36 +00:00  
				
					
						
							
							
								 
						
							
							
								c9bfb058d8 
								
							
								 
							
						 
						
							
							
								
								Fix a bug with single-room search searching all rooms  
							
							... 
							
							
							
							* Create a new method for getting predecessor rooms
* Remove formatting change 
							
						 
						
							2019-01-22 12:00:41 +00:00  
				
					
						
							
							
								 
						
							
							
								df3a661e4a 
								
							
								 
							
						 
						
							
							
								
								Search for messages across predecessor rooms  
							
							... 
							
							
							
							Signed-off-by: Andrew Morgan <andrew@amorgan.xyz> 
							
						 
						
							2019-01-18 11:19:20 +00:00  
				
					
						
							
							
								 
						
							
							
								0708f437cc 
								
							
								 
							
						 
						
							
							
								
								Log roomid along with Unknown room ( #4297 )  
							
							
							
						 
						
							2018-12-24 10:49:42 +01:00  
				
					
						
							
							
								 
						
							
							
								ad88460e0d 
								
							
								 
							
						 
						
							
							
								
								Move _find_unreferenced_groups  
							
							
							
						 
						
							2018-10-29 14:24:19 +00:00  
				
					
						
							
							
								 
						
							
							
								664b192a3b 
								
							
								 
							
						 
						
							
							
								
								Fix set operations thinko  
							
							
							
						 
						
							2018-10-29 14:21:43 +00:00  
				
					
						
							
							
								 
						
							
							
								f4f223aa44 
								
							
								 
							
						 
						
							
							
								
								Don't make temporary list  
							
							
							
						 
						
							2018-10-29 14:01:49 +00:00  
				
					
						
							
							
								 
						
							
							
								b2399f6281 
								
							
								 
							
						 
						
							
							
								
								Make SQL a bit cleaner  
							
							
							
						 
						
							2018-10-29 14:01:11 +00:00  
				
					
						
							
							
								 
						
							
							
								03e634dad4 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/purge_state_groups  
							
							
							
						 
						
							2018-10-26 16:22:45 +01:00  
				
					
						
							
							
								 
						
							
							
								cb53ce9d64 
								
									
								
							
								 
							
						 
						
							
							
								
								Refactor state group lookup to reduce DB hits ( #4011 )  
							
							... 
							
							
							
							Currently when fetching state groups from the data store we make two
hits two the database: once for members and once for non-members (unless
request is filtered to one or the other). This adds needless load to the
datbase, so this PR refactors the lookup to make only a single database
hit. 
							
						 
						
							2018-10-25 17:49:55 +01:00  
				
					
						
							
							
								 
						
							
							
								47a9da28ca 
								
							
								 
							
						 
						
							
							
								
								Batch process handling state groups  
							
							
							
						 
						
							2018-10-19 15:48:15 +01:00  
				
					
						
							
							
								 
						
							
							
								67a1e315cc 
								
							
								 
							
						 
						
							
							
								
								Fix up comments  
							
							
							
						 
						
							2018-10-12 13:49:48 +01:00  
				
					
						
							
							
								 
						
							
							
								4917ff5523 
								
							
								 
							
						 
						
							
							
								
								Add state_group index to event_to_state_groups  
							
							... 
							
							
							
							This is needed to efficiently check for unreferenced state groups during
purge. 
							
						 
						
							2018-10-04 16:03:08 +01:00  
				
					
						
							
							
								 
						
							
							
								17d585753f 
								
							
								 
							
						 
						
							
							
								
								Delete unreferened state groups during purge  
							
							
							
						 
						
							2018-10-04 16:03:06 +01:00  
				
					
						
							
							
								 
						
							
							
								ae6ad4cf41 
								
									
								
							
								 
							
						 
						
							
							
								
								docstrings and unittests for storage.state ( #3958 )  
							
							... 
							
							
							
							I spent ages trying to figure out how I was going mad... 
							
						 
						
							2018-09-27 11:22:25 +01:00  
				
					
						
							
							
								 
						
							
							
								bb81e78ec6 
								
									
								
							
								 
							
						 
						
							
							
								
								Split the state_group_cache in two ( #3726 )  
							
							... 
							
							
							
							Splits the state_group_cache in two.
One half contains normal state events; the other contains member events.
The idea is that the lazyloading common case of: "I want a subset of member events plus all of the other state" can be accomplished efficiently by splitting the cache into two, and asking for "all events" from the non-members cache, and "just these keys" from the members cache.  This means we can avoid having to make DictionaryCache aware of these sort of complicated queries, whilst letting LL requests benefit from the caching.
Previously we were unable to sensibly use the caching and had to pull all state from the DB irrespective of the filtering, which made things slow.  Hopefully fixes https://github.com/matrix-org/synapse/issues/3720 . 
							
						 
						
							2018-08-22 00:56:37 +02:00  
				
					
						
							
							
								 
						
							
							
								3f543dc021 
								
							
								 
							
						 
						
							
							
								
								initial cut at a room summary API ( #3574 )  
							
							
							
						 
						
							2018-08-16 09:46:50 +01:00  
				
					
						
							
							
								 
						
							
							
								2f78f432c4 
								
							
								 
							
						 
						
							
							
								
								speed up /members and add at= and membership params ( #3568 )  
							
							
							
						 
						
							2018-08-15 16:35:22 +01:00  
				
					
						
							
							
								 
						
							
							
								0ca459ea33 
								
							
								 
							
						 
						
							
							
								
								Basic support for room versioning  
							
							... 
							
							
							
							This is the first tranche of support for room versioning. It includes:
 * setting the default room version in the config file
 * new room_version param on the createRoom API
 * storing the version of newly-created rooms in the m.room.create event
 * fishing the version of existing rooms out of the m.room.create event 
							
						 
						
							2018-08-03 16:08:32 +01:00  
				
					
						
							
							
								 
						
							
							
								bc7944e6d2 
								
							
								 
							
						 
						
							
							
								
								switch missing_types to be a bool  
							
							
							
						 
						
							2018-07-25 23:36:31 +01:00  
				
					
						
							
							
								 
						
							
							
								7d9fb88617 
								
							
								 
							
						 
						
							
							
								
								incorporate more review.  
							
							
							
						 
						
							2018-07-25 16:33:50 +01:00  
				
					
						
							
							
								 
						
							
							
								cb5c37a57c 
								
							
								 
							
						 
						
							
							
								
								handle the edge case for _get_some_state_from_cache where types is []  
							
							
							
						 
						
							2018-07-24 20:34:45 +01:00  
				
					
						
							
							
								 
						
							
							
								e22700c3dd 
								
							
								 
							
						 
						
							
							
								
								consider non-filter_type types as wildcards, thus missing from the state-group-cache  
							
							
							
						 
						
							2018-07-24 13:59:07 +01:00  
				
					
						
							
							
								 
						
							
							
								cd241d6bda 
								
							
								 
							
						 
						
							
							
								
								incorporate more review  
							
							
							
						 
						
							2018-07-24 12:39:40 +01:00  
				
					
						
							
							
								 
						
							
							
								efcdacad7d 
								
							
								 
							
						 
						
							
							
								
								handle case where types is [] on postgres correctly  
							
							
							
						 
						
							2018-07-23 22:41:05 +01:00  
				
					
						
							
							
								 
						
							
							
								254fb430d1 
								
							
								 
							
						 
						
							
							
								
								incorporate review  
							
							
							
						 
						
							2018-07-23 19:21:20 +01:00  
				
					
						
							
							
								 
						
							
							
								2f558300cc 
								
							
								 
							
						 
						
							
							
								
								fix thinkos; unbreak tests  
							
							
							
						 
						
							2018-07-19 19:22:27 +01:00  
				
					
						
							
							
								 
						
							
							
								bcaec2915a 
								
							
								 
							
						 
						
							
							
								
								incorporate review  
							
							
							
						 
						
							2018-07-19 19:03:50 +01:00  
				
					
						
							
							
								 
						
							
							
								924eb34d94 
								
							
								 
							
						 
						
							
							
								
								add a filtered_types param to limit filtering to specific types  
							
							
							
						 
						
							2018-07-19 18:32:02 +01:00  
				
					
						
							
							
								 
						
							
							
								be3adfc331 
								
							
								 
							
						 
						
							
							
								
								merge develop pydoc for _get_state_for_groups  
							
							
							
						 
						
							2018-07-19 11:26:04 +01:00  
				
					
						
							
							
								 
						
							
							
								49af402019 
								
							
								 
							
						 
						
							
							
								
								run isort  
							
							
							
						 
						
							2018-07-09 16:09:20 +10:00  
				
					
						
							
							
								 
						
							
							
								43e02c409d 
								
							
								 
							
						 
						
							
							
								
								Disable partial state group caching for wildcard lookups  
							
							... 
							
							
							
							When _get_state_for_groups is given a wildcard filter, just do a complete
lookup. Hopefully this will give us the best of both worlds by not filling up
the ram if we only need one or two keys, but also making the cache still work
for the federation reader usecase. 
							
						 
						
							2018-06-22 11:52:07 +01:00  
				
					
						
							
							
								 
						
							
							
								240f192523 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3382  from matrix-org/rav/optimise_state_groups  
							
							... 
							
							
							
							Optimise state_group_cache update 
							
						 
						
							2018-06-22 11:20:20 +01:00