32e7c9e7f2 
								
									
								
							
								 
							
						 
						
							
							
								
								Run Black. ( #5482 )  
							
							
							
						 
						
							2019-06-20 19:32:02 +10:00  
				
					
						
							
							
								 
						
							
							
								2ebeda48b2 
								
							
								 
							
						 
						
							
							
								
								Add test  
							
							
							
						 
						
							2019-06-07 12:15:33 +01:00  
				
					
						
							
							
								 
						
							
							
								5bec8d660d 
								
							
								 
							
						 
						
							
							
								
								Make starting pushers faster during start up  
							
							... 
							
							
							
							We start all pushers on start up and immediately start a background
process to fetch push to send. This makes start up incredibly painful
when dealing with many pushers.
Instead, let's do a quick fast DB check to see if there *may* be push to
send and only start the background processes for those pushers. We also
stagger starting up and doing those checks so that we don't try and
handle all pushers at once. 
							
						 
						
							2019-04-02 16:59:13 +01:00  
				
					
						
							
							
								 
						
							
							
								b82c9cf462 
								
							
								 
							
						 
						
							
							
								
								Add missing return  
							
							
							
						 
						
							2019-02-22 15:27:40 +00:00  
				
					
						
							
							
								 
						
							
							
								f2891d2487 
								
							
								 
							
						 
						
							
							
								
								Correctly handle PusherConfigException  
							
							
							
						 
						
							2019-02-22 15:18:19 +00:00  
				
					
						
							
							
								 
						
							
							
								0abb094f1a 
								
									
								
							
								 
							
						 
						
							
							
								
								bail out early in on_new_receipts if no pushers ( #4706 )  
							
							
							
						 
						
							2019-02-21 17:51:21 +00:00  
				
					
						
							
							
								 
						
							
							
								c573794b22 
								
							
								 
							
						 
						
							
							
								
								Fix start_pushers vs _start_pushers confusion  
							
							
							
						 
						
							2018-10-24 09:24:55 +01:00  
				
					
						
							
							
								 
						
							
							
								026cd91ac8 
								
							
								 
							
						 
						
							
							
								
								Run PusherPool.start as a background process  
							
							... 
							
							
							
							We don't do anything with the result, so this is needed to give this code a
logcontext. 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								f749607c91 
								
							
								 
							
						 
						
							
							
								
								Make on_started synchronous too  
							
							... 
							
							
							
							This brings it into line with on_new_notifications and on_new_receipts. It
requires a little bit of hoop-jumping in EmailPusher to load the throttle
params before the first loop. 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								e7a16c6210 
								
							
								 
							
						 
						
							
							
								
								Remove redundant run_as_background_process() from pusherpool  
							
							... 
							
							
							
							`on_new_notifications` and `on_new_receipts` in `HttpPusher` and `EmailPusher`
now always return synchronously, so we can remove the `defer.gatherResults` on
their results, and the `run_as_background_process` wrappers can be removed too
because the PusherPool methods will now complete quickly enough. 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								5110f4e425 
								
							
								 
							
						 
						
							
							
								
								move get_all_pushers call down  
							
							... 
							
							
							
							simplifies the interface to _start_pushers 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								04277d0ed8 
								
							
								 
							
						 
						
							
							
								
								Factor PusherPool._start_pusher out of _start_pushers  
							
							... 
							
							
							
							... and use it from start_pusher_by_id. This mostly simplifies
start_pusher_by_id. 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								3e8b02c939 
								
							
								 
							
						 
						
							
							
								
								Rename _refresh_pusher  
							
							... 
							
							
							
							This is public (or at least, called from outside the class), so ought to have a
better name. 
							
						 
						
							2018-10-22 16:12:11 +01:00  
				
					
						
							
							
								 
						
							
							
								66f7dc8c87 
								
							
								 
							
						 
						
							
							
								
								Fix logcontexts for running pushers  
							
							... 
							
							
							
							First of all, avoid resetting the logcontext before running the pushers, to fix
the "Starting db txn 'get_all_updated_receipts' from sentinel context" warning.
Instead, give them their own "background process" logcontexts. 
							
						 
						
							2018-08-17 00:32:39 +01:00  
				
					
						
							
							
								 
						
							
							
								a61738b316 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove run_on_reactor ( #3395 )  
							
							
							
						 
						
							2018-06-14 18:27:37 +10:00  
				
					
						
							
							
								 
						
							
							
								fc149b4eeb 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/develop' into rav/use_run_in_background  
							
							
							
						 
						
							2018-04-27 14:31:23 +01:00  
				
					
						
							
							
								 
						
							
							
								2a13af23bc 
								
							
								 
							
						 
						
							
							
								
								Use run_in_background in preference to preserve_fn  
							
							... 
							
							
							
							While I was going through uses of preserve_fn for other PRs, I converted places
which only use the wrapped function once to use run_in_background, to avoid
creating the function object. 
							
						 
						
							2018-04-27 12:55:51 +01:00  
				
					
						
							
							
								 
						
							
							
								605defb9e4 
								
							
								 
							
						 
						
							
							
								
								Add missing consumeErrors  
							
							... 
							
							
							
							In general we want defer.gatherResults to consumeErrors, rather than having
exceptions hanging around and getting logged as CRITICAL unhandled errors. 
							
						 
						
							2018-04-27 11:16:28 +01:00  
				
					
						
							
							
								 
						
							
							
								2c6d63922a 
								
							
								 
							
						 
						
							
							
								
								Remove pushers when deleting access tokens  
							
							... 
							
							
							
							Whenever an access token is invalidated, we should remove the associated
pushers. 
							
						 
						
							2017-11-29 16:44:35 +00:00  
				
					
						
							
							
								 
						
							
							
								7e6fa29cb5 
								
							
								 
							
						 
						
							
							
								
								Remove preserve_context_over_{fn, deferred}  
							
							... 
							
							
							
							Both of these functions ae known to leak logcontexts. Replace the remaining
calls to them and kill them off. 
							
						 
						
							2017-11-14 11:22:42 +00:00  
				
					
						
							
							
								 
						
							
							
								eaaabc6c4f 
								
							
								 
							
						 
						
							
							
								
								replace 'except:' with 'except Exception:'  
							
							... 
							
							
							
							what could possibly go wrong 
							
						 
						
							2017-10-23 15:52:32 +01:00  
				
					
						
							
							
								 
						
							
							
								11c2a3655f 
								
							
								 
							
						 
						
							
							
								
								Only load jinja2 templates once  
							
							... 
							
							
							
							Instead of every time a new email pusher is created, as loading jinja2
templates is slow. 
							
						 
						
							2017-05-22 17:48:58 +01:00  
				
					
						
							
							
								 
						
							
							
								9219139351 
								
							
								 
							
						 
						
							
							
								
								Preserve some logcontexts  
							
							
							
						 
						
							2016-08-24 11:58:40 +01:00  
				
					
						
							
							
								 
						
							
							
								dc3a00f24f 
								
							
								 
							
						 
						
							
							
								
								Refactor user_delete_access_tokens. Invalidate get_user_by_access_token to slaves.  
							
							
							
						 
						
							2016-08-15 17:04:39 +01:00  
				
					
						
							
							
								 
						
							
							
								e6bffa4475 
								
							
								 
							
						 
						
							
							
								
								Unused import  
							
							
							
						 
						
							2016-05-04 11:26:58 +01:00  
				
					
						
							
							
								 
						
							
							
								92f0f3d21d 
								
							
								 
							
						 
						
							
							
								
								Catch all exceptions when creating a pusher  
							
							
							
						 
						
							2016-05-04 11:24:07 +01:00  
				
					
						
							
							
								 
						
							
							
								b2c04da8dc 
								
							
								 
							
						 
						
							
							
								
								Add an email pusher for new users  
							
							... 
							
							
							
							If they registered with an email address and email notifs are enabled on the HS 
							
						 
						
							2016-04-29 11:43:57 +01:00  
				
					
						
							
							
								 
						
							
							
								a3ac837599 
								
							
								 
							
						 
						
							
							
								
								Optionally split out the pushers into a separate process  
							
							
							
						 
						
							2016-04-21 17:22:37 +01:00  
				
					
						
							
							
								 
						
							
							
								65141161f6 
								
							
								 
							
						 
						
							
							
								
								Unused member variable  
							
							
							
						 
						
							2016-04-12 16:25:26 +01:00  
				
					
						
							
							
								 
						
							
							
								6ec02e9ecf 
								
							
								 
							
						 
						
							
							
								
								indenting  
							
							
							
						 
						
							2016-04-07 17:24:05 +01:00  
				
					
						
							
							
								 
						
							
							
								25cd5bb697 
								
							
								 
							
						 
						
							
							
								
								defer.gatherResults rather than doing all the pokes in series  
							
							
							
						 
						
							2016-04-07 17:22:14 +01:00  
				
					
						
							
							
								 
						
							
							
								92e3071623 
								
							
								 
							
						 
						
							
							
								
								Send badge count pushes.  
							
							... 
							
							
							
							Also fix bugs with retrying. 
							
						 
						
							2016-04-07 15:39:53 +01:00  
				
					
						
							
							
								 
						
							
							
								7e2c89a37f 
								
							
								 
							
						 
						
							
							
								
								Make pushers use the event_push_actions table instead of listening on an event stream & running the rules again. Sytest passes, but remaining to do:  
							
							... 
							
							
							
							* Make badges work again
 * Remove old, unused code 
							
						 
						
							2016-04-06 15:42:15 +01:00  
				
					
						
							
							
								 
						
							
							
								af59826a2f 
								
							
								 
							
						 
						
							
							
								
								Make select more sensible when dseleting access tokens, rename pusher deletion to match access token deletion and make exception arg optional.  
							
							
							
						 
						
							2016-03-11 14:34:09 +00:00  
				
					
						
							
							
								 
						
							
							
								aa11db5f11 
								
							
								 
							
						 
						
							
							
								
								Fix cache invalidation so deleting access tokens (which we did when changing password) actually takes effect without HS restart. Reinstate the code to avoid logging out the session that changed the password, removed in  415c2f0549 
							
							
							
						 
						
							2016-03-11 13:14:18 +00:00  
				
					
						
							
							
								 
						
							
							
								7076082ae6 
								
							
								 
							
						 
						
							
							
								
								Fix relative imports so they work in both py3 and py27  
							
							
							
						 
						
							2016-03-08 11:45:50 +00:00  
				
					
						
							
							
								 
						
							
							
								b9977ea667 
								
							
								 
							
						 
						
							
							
								
								Remove dead code for setting device specific rules.  
							
							... 
							
							
							
							It wasn't possible to hit the code from the API because of a typo
in parsing the request path. Since no-one was using the feature
we might as well remove the dead code. 
							
						 
						
							2016-02-18 16:05:13 +00:00  
				
					
						
							
							
								 
						
							
							
								2c1fbea531 
								
							
								 
							
						 
						
							
							
								
								Fix up logcontexts  
							
							
							
						 
						
							2016-02-08 14:26:45 +00:00  
				
					
						
							
							
								 
						
							
							
								afb7b377f2 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into push_badge_counts  
							
							
							
						 
						
							2016-01-19 18:17:23 +00:00  
				
					
						
							
							
								 
						
							
							
								12623c99b6 
								
							
								 
							
						 
						
							
							
								
								Use the unread notification count to send accurate badge counts in push notifications.  
							
							
							
						 
						
							2016-01-13 18:55:57 +00:00  
				
					
						
							
							
								 
						
							
							
								9c1f853d58 
								
							
								 
							
						 
						
							
							
								
								Rename 'user_name' to 'user_id' in push to make it consistent with the rest of the code  
							
							
							
						 
						
							2016-01-13 13:32:59 +00:00  
				
					
						
							
							
								 
						
							
							
								6c28ac260c 
								
							
								 
							
						 
						
							
							
								
								copyrights  
							
							
							
						 
						
							2016-01-07 04:26:29 +00:00  
				
					
						
							
							
								 
						
							
							
								415c2f0549 
								
							
								 
							
						 
						
							
							
								
								Simplify LoginHander and AuthHandler  
							
							... 
							
							
							
							* Merge LoginHandler -> AuthHandler
 * Add a bunch of documentation
 * Improve some naming
 * Remove unused branches
I will start merging the actual logic of the two handlers shortly 
							
						 
						
							2015-08-12 15:49:37 +01:00  
				
					
						
							
							
								 
						
							
							
								3e71d13acf 
								
							
								 
							
						 
						
							
							
								
								Also log when we've started pushers  
							
							
							
						 
						
							2015-04-29 18:37:42 +01:00  
				
					
						
							
							
								 
						
							
							
								c27d6ad6b5 
								
							
								 
							
						 
						
							
							
								
								Only start pushers when synapse has fully started  
							
							
							
						 
						
							2015-04-29 18:25:24 +01:00  
				
					
						
							
							
								 
						
							
							
								46daf2d200 
								
							
								 
							
						 
						
							
							
								
								Start pushers on reactor thread  
							
							
							
						 
						
							2015-04-29 18:22:20 +01:00  
				
					
						
							
							
								 
						
							
							
								12d381bd5d 
								
							
								 
							
						 
						
							
							
								
								Decode the data json in the storage layer (was moved but this part was missed)  
							
							
							
						 
						
							2015-04-29 17:13:51 +01:00  
				
					
						
							
							
								 
						
							
							
								327ca883ec 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into postgres  
							
							
							
						 
						
							2015-04-28 13:39:42 +01:00  
				
					
						
							
							
								 
						
							
							
								bc9e69e160 
								
							
								 
							
						 
						
							
							
								
								Move encoding and decoding of JSON into storage layer  
							
							
							
						 
						
							2015-04-16 11:01:09 +01:00  
				
					
						
							
							
								 
						
							
							
								6f4f7e4e22 
								
							
								 
							
						 
						
							
							
								
								pep8  
							
							
							
						 
						
							2015-03-26 14:12:06 +00:00