7960c26fda 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix adding new rows instead of updating them if one of the key values is a NULL in upserts. ( #4369 )  
							
							
							
						 
						
							2019-01-09 22:26:25 +11:00  
				
					
						
							
							
								 
						
							
							
								b5ac0ffa0a 
								
							
								 
							
						 
						
							
							
								
								add more detail to logging regarding "More than one row matched" error ( #4234 )  
							
							
							
						 
						
							2018-12-04 11:57:39 +01:00  
				
					
						
							
							
								 
						
							
							
								ecc23188f4 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix UnicodeDecodeError when postgres is not configured in english ( #4253 )  
							
							... 
							
							
							
							This is a bit of a half-assed effort at fixing https://github.com/matrix-org/synapse/issues/4252 . Fundamentally the right answer is to drop support for Python 2. 
							
						 
						
							2018-12-04 11:55:52 +01:00  
				
					
						
							
							
								 
						
							
							
								e1728dfcbe 
								
									
								
							
								 
							
						 
						
							
							
								
								Make scripts/ and scripts-dev/ pass pyflakes (and the rest of the codebase on py3) ( #4068 )  
							
							
							
						 
						
							2018-10-20 11:16:55 +11:00  
				
					
						
							
							
								 
						
							
							
								14e4d4f4bf 
								
									
								
							
								 
							
						 
						
							
							
								
								Port storage/ to Python 3 ( #3725 )  
							
							
							
						 
						
							2018-08-31 00:19:58 +10:00  
				
					
						
							
							
								 
						
							
							
								3f543dc021 
								
							
								 
							
						 
						
							
							
								
								initial cut at a room summary API ( #3574 )  
							
							
							
						 
						
							2018-08-16 09:46:50 +01:00  
				
					
						
							
							
								 
						
							
							
								07defd5fe6 
								
							
								 
							
						 
						
							
							
								
								Fix another logcontext leak in _persist_events  
							
							... 
							
							
							
							We need to run the errback in the sentinel context to avoid losing our own
context.
Also: add logging to runInteraction to help identify where "Starting db
connection from sentinel context" warnings are coming from 
							
						 
						
							2018-07-25 10:53:23 +01:00  
				
					
						
							
							
								 
						
							
							
								f1a15ea206 
								
							
								 
							
						 
						
							
							
								
								revert  00bc979 
							
							... 
							
							
							
							... we've fixed the things that caused the warnings, so we should reinstate the
warning. 
							
						 
						
							2018-07-19 11:14:20 +01:00  
				
					
						
							
							
								 
						
							
							
								00bc979137 
								
							
								 
							
						 
						
							
							
								
								Disable logcontext warning  
							
							... 
							
							
							
							Temporary workaround to #3518  while we release 0.33.0. 
							
						 
						
							2018-07-19 10:51:15 +01:00  
				
					
						
							
							
								 
						
							
							
								c3c29aa196 
								
									
								
							
								 
							
						 
						
							
							
								
								Attempt to include db threads in cpu usage stats ( #3496 )  
							
							... 
							
							
							
							Let's try to include time spent in the DB threads in the per-request/block cpu
usage metrics. 
							
						 
						
							2018-07-10 16:12:36 +01:00  
				
					
						
							
							
								 
						
							
							
								49af402019 
								
							
								 
							
						 
						
							
							
								
								run isort  
							
							
							
						 
						
							2018-07-09 16:09:20 +10:00  
				
					
						
							
							
								 
						
							
							
								a2eb5db4a0 
								
							
								 
							
						 
						
							
							
								
								update metrics to be in seconds  
							
							
							
						 
						
							2018-05-28 19:10:27 +10:00  
				
					
						
							
							
								 
						
							
							
								754826a830 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/develop' into 3218-official-prom  
							
							
							
						 
						
							2018-05-28 18:57:23 +10:00  
				
					
						
							
							
								 
						
							
							
								7ea07c7305 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3278  from NotAFile/py3-storage-base  
							
							... 
							
							
							
							Py3 storage/_base.py 
							
						 
						
							2018-05-24 13:08:09 -05:00  
				
					
						
							
							
								 
						
							
							
								095292304f 
								
							
								 
							
						 
						
							
							
								
								Py3 storage/_base.py  
							
							... 
							
							
							
							Signed-off-by: Adrian Tschira <nota@notafile.com> 
							
						 
						
							2018-05-24 18:24:12 +02:00  
				
					
						
							
							
								 
						
							
							
								fcc525b0b7 
								
							
								 
							
						 
						
							
							
								
								rest of the changes  
							
							
							
						 
						
							2018-05-21 19:48:57 -05:00  
				
					
						
							
							
								 
						
							
							
								dcc235b47d 
								
							
								 
							
						 
						
							
							
								
								use stand-in value if maxint is not available  
							
							... 
							
							
							
							Signed-off-by: Adrian Tschira <nota@notafile.com> 
							
						 
						
							2018-05-19 17:35:44 +02:00  
				
					
						
							
							
								 
						
							
							
								89de934981 
								
							
								 
							
						 
						
							
							
								
								Use psycopg2cffi module instead of psycopg2 if running on pypy  
							
							... 
							
							
							
							The psycopg2 package isn't available for PyPy.  This commit adds a check
if the runtime is PyPy, and if it is uses psycopg2cffi module in favor
of psycopg2. This is almost a drop-in replacement, except for one place
where an additional cast to string is required. 
							
						 
						
							2018-04-10 11:29:52 +02:00  
				
					
						
							
							
								 
						
							
							
								efb79820b4 
								
							
								 
							
						 
						
							
							
								
								Fix bug with delayed cache invalidation stream  
							
							... 
							
							
							
							We poked the notifier before updated the current token for the cache
invalidation stream. This mean that sometimes the update wouldn't be
sent until the next time a cache was invalidated. 
							
						 
						
							2018-03-02 14:45:15 +00:00  
				
					
						
							
							
								 
						
							
							
								3d12d97415 
								
							
								 
							
						 
						
							
							
								
								Track DB scheduling delay per-request  
							
							... 
							
							
							
							For each request, track the amount of time spent waiting for a db
connection. This entails adding it to the LoggingContext and we may as well add
metrics for it while we are passing. 
							
						 
						
							2018-01-16 17:23:32 +00:00  
				
					
						
							
							
								 
						
							
							
								8615f19d20 
								
							
								 
							
						 
						
							
							
								
								rework runInteraction in terms of runConnection  
							
							... 
							
							
							
							... so that we can share the code 
							
						 
						
							2018-01-16 17:08:29 +00:00  
				
					
						
							
							
								 
						
							
							
								f397153dfc 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into matthew/search-all-local-users  
							
							
							
						 
						
							2017-11-30 01:51:38 +00:00  
				
					
						
							
							
								 
						
							
							
								3241c7aac3 
								
							
								 
							
						 
						
							
							
								
								untested WIP but might actually work  
							
							
							
						 
						
							2017-11-29 18:27:05 +00:00  
				
					
						
							
							
								 
						
							
							
								5a4da5bf78 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2697  from matrix-org/rav/fix_urlcache_index_error  
							
							... 
							
							
							
							Fix error on sqlite 3.7 
							
						 
						
							2017-11-27 12:25:48 +00:00  
				
					
						
							
							
								 
						
							
							
								63ccaa5873 
								
							
								 
							
						 
						
							
							
								
								Avoid retrying forever on IntegrityError  
							
							
							
						 
						
							2017-11-27 12:00:07 +00:00  
				
					
						
							
							
								 
						
							
							
								6b48b3e277 
								
							
								 
							
						 
						
							
							
								
								fix sql fails  
							
							
							
						 
						
							2017-11-22 18:06:24 +00:00  
				
					
						
							
							
								 
						
							
							
								2908f955d1 
								
							
								 
							
						 
						
							
							
								
								Check database in has_completed_background_updates  
							
							... 
							
							
							
							so that the right thing happens on workers. 
							
						 
						
							2017-11-22 18:02:15 +00:00  
				
					
						
							
							
								 
						
							
							
								77a1227870 
								
							
								 
							
						 
						
							
							
								
								Fix broken ref to IntegrityError  
							
							
							
						 
						
							2017-11-16 16:03:38 +00:00  
				
					
						
							
							
								 
						
							
							
								10aaa1bc15 
								
							
								 
							
						 
						
							
							
								
								_simple_upsert: retry on IntegrityError  
							
							... 
							
							
							
							wrap the call to _simple_upsert_txn in a loop so that we retry on an
integrityerror: this means we can avoid locking the table provided there is an
unique index. 
							
						 
						
							2017-11-16 15:30:15 +00:00  
				
					
						
							
							
								 
						
							
							
								cdc9e50a5d 
								
							
								 
							
						 
						
							
							
								
								Cleanup in _simple_upsert_txn  
							
							... 
							
							
							
							Bail out early to reduce indentation 
							
						 
						
							2017-11-16 15:29:10 +00:00  
				
					
						
							
							
								 
						
							
							
								4dd1bfa8c1 
								
							
								 
							
						 
						
							
							
								
								Revert "Revert "move _state_group_cache to statestore""  
							
							... 
							
							
							
							We're going to fix this properly on this branch, so that the _state_group_cache
can end up in StateGroupReadStore.
This reverts commit ab335edb02 
							
						 
						
							2017-11-14 11:43:58 +00:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								ab335edb02 
								
							
								 
							
						 
						
							
							
								
								Revert "move _state_group_cache to statestore"  
							
							... 
							
							
							
							This reverts commit f5cf3638e9 
							
						 
						
							2017-11-13 10:05:33 +00:00  
				
					
						
							
							
								 
						
							
							
								f5cf3638e9 
								
							
								 
							
						 
						
							
							
								
								move _state_group_cache to statestore  
							
							... 
							
							
							
							this is internal to statestore, so let's keep it there. 
							
						 
						
							2017-11-07 16:43:00 +00:00  
				
					
						
							
							
								 
						
							
							
								eaaabc6c4f 
								
							
								 
							
						 
						
							
							
								
								replace 'except:' with 'except Exception:'  
							
							... 
							
							
							
							what could possibly go wrong 
							
						 
						
							2017-10-23 15:52:32 +01:00  
				
					
						
							
							
								 
						
							
							
								97c544f91f 
								
							
								 
							
						 
						
							
							
								
								Add _simple_update  
							
							
							
						 
						
							2017-08-25 11:11:37 +01:00  
				
					
						
							
							
								 
						
							
							
								b5e8d529e6 
								
							
								 
							
						 
						
							
							
								
								Define CACHE_SIZE_FACTOR once  
							
							
							
						 
						
							2017-07-04 09:56:44 +01:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								21e255a8f1 
								
							
								 
							
						 
						
							
							
								
								Split the table in two  
							
							
							
						 
						
							2017-06-01 14:50:46 +01:00  
				
					
						
							
							
								 
						
							
							
								bfbc907cec 
								
							
								 
							
						 
						
							
							
								
								Prefill state caches  
							
							
							
						 
						
							2017-05-15 15:11:13 +01:00  
				
					
						
							
							
								 
						
							
							
								587f07543f 
								
							
								 
							
						 
						
							
							
								
								Revert "Prefill state caches"  
							
							
							
						 
						
							2017-05-04 15:07:27 +01:00  
				
					
						
							
							
								 
						
							
							
								a2c89a225c 
								
							
								 
							
						 
						
							
							
								
								Prefill state caches  
							
							
							
						 
						
							2017-05-02 10:40:31 +01:00  
				
					
						
							
							
								 
						
							
							
								e71940aa64 
								
							
								 
							
						 
						
							
							
								
								Use iter(items|values)  
							
							
							
						 
						
							2017-03-24 10:57:02 +00:00  
				
					
						
							
							
								 
						
							
							
								00957d1aa4 
								
							
								 
							
						 
						
							
							
								
								User Cursor.__iter__ instead of fetchall  
							
							... 
							
							
							
							This prevents unnecessary construction of lists 
							
						 
						
							2017-03-23 17:53:49 +00:00  
				
					
						
							
							
								 
						
							
							
								bbeeb97f75 
								
							
								 
							
						 
						
							
							
								
								Implement _simple_delete_many_txn, use it to delete devices  
							
							... 
							
							
							
							(But this doesn't implement the same for deleting access tokens or e2e keys.
Also respond to code review. 
							
						 
						
							2017-03-13 17:53:23 +00:00  
				
					
						
							
							
								 
						
							
							
								6ad71cc29d 
								
							
								 
							
						 
						
							
							
								
								Remove spurious SQL logging ( #1972 )  
							
							... 
							
							
							
							looks like the upsert function was accidentally sending sql logging to the
general logger. We already log the sql in `txn.execute`. 
							
						 
						
							2017-03-08 18:00:44 +00:00  
				
					
						
							
							
								 
						
							
							
								b84907bdbb 
								
							
								 
							
						 
						
							
							
								
								Intern table column names once  
							
							
							
						 
						
							2017-02-28 14:38:16 +00:00  
				
					
						
							
							
								 
						
							
							
								1a4f8022e6 
								
							
								 
							
						 
						
							
							
								
								Strip newlines from SQL queries  
							
							
							
						 
						
							2017-02-23 11:15:31 +00:00  
				
					
						
							
							
								 
						
							
							
								2849d3f29d 
								
							
								 
							
						 
						
							
							
								
								admin,storage: added more administrator functionalities  
							
							... 
							
							
							
							administrators can now:
 - Set displayname of users
 - Update user avatars
 - Search for users by user_id
 - Browse all users in a paginated API
 - Reset user passwords
 - Deactivate users
Helpers for doing paginated queries has also been added to storage
Signed-off-by: Morteza Araby <morteza.araby@ericsson.com> 
							
						 
						
							2017-02-02 14:02:26 +01:00