summary refs log tree commit diff
path: root/synapse/app/appservice.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make sure that we close db connections opened during initRichard van der Hoff2018-08-281-4/+1
| | | | | | | | | We should explicitly close any db connections we open, because failing to do so can block other transactions as per https://github.com/matrix-org/synapse/issues/3682. Let's also try to factor out some of the boilerplate by having server classes define their datastore class rather than duplicating the whole of `setup`.
* Logcontexts for replication command handlersRichard van der Hoff2018-08-171-1/+2
| | | | | | | | | | Run the handlers for replication commands as background processes. This should improve the visibility in our metrics, and reduce the number of "running db transaction from sentinel context" warnings. Ideally it means converting the things that fire off deferreds into the night into things that actually return a Deferred when they are done. I've made a bit of a stab at this, but it will probably be leaky.
* run isortAmber Brown2018-07-091-2/+3
|
* Merge pull request #3389 from turt2live/travis/name_metricsAmber Brown2018-06-131-1/+1
|\ | | | | Use the correct flag (enable_metrics) when warning about an incorrect metrics setup
| * The flag is named enable_metrics, not collect_metricsTravis Ralston2018-06-121-1/+1
| | | | | | Signed-off-by: Travis Ralston <travpc@gmail.com>
* | Use the RegistryProxy for appservices tooTravis Ralston2018-06-121-1/+2
|/ | | Signed-off-by: Travis Ralston <travpc@gmail.com>
* Run Prometheus on a different port, optionally. (#3274)Amber Brown2018-05-311-0/+7
|
* Set Server header in SynapseRequestRichard van der Hoff2018-05-101-0/+1
| | | | | | | | | | | | (instead of everywhere that writes a response. Or rather, the subset of places which write responses where we haven't forgotten it). This also means that we don't have to have the mysterious version_string attribute in anything with a request handler. Unfortunately it does mean that we have to pass the version string wherever we instantiate a SynapseSite, which has been c&ped 150 times, but that is code that ought to be cleaned up anyway really.
* Improve exception handling for background processesRichard van der Hoff2018-04-271-5/+10
| | | | | | | | | | | | | | | | | | There were a bunch of places where we fire off a process to happen in the background, but don't have any exception handling on it - instead relying on the unhandled error being logged when the relevent deferred gets garbage-collected. This is unsatisfactory for a number of reasons: - logging on garbage collection is best-effort and may happen some time after the error, if at all - it can be hard to figure out where the error actually happened. - it is logged as a scary CRITICAL error which (a) I always forget to grep for and (b) it's not really CRITICAL if a background process we don't care about fails. So this is an attempt to add exception handling to everything we fire off into the background.
* 404 correctly on missing paths via NoResourceMatthew Hodgson2018-03-231-2/+2
| | | | fixes https://github.com/matrix-org/synapse/issues/2043 and https://github.com/matrix-org/synapse/issues/2029
* Factor out get_db_conn to HomeServer base classRichard van der Hoff2018-01-261-13/+0
| | | | | This function is identical to all subclasses, so we may as well push it up to the base class to reduce duplication (and make use of it in the tests)
* Implement listen_tcp method in remaining workersSilke2017-12-181-21/+17
| | | | Signed-off-by: Silke <silke@slxh.eu>
* Factor out common application startRichard van der Hoff2017-08-151-40/+10
| | | | | We have 10 copies of this code, and I don't really want to update each one separately.
* Add the appropriate amount of preserve_fnErik Johnston2017-04-041-2/+4
|
* Update all the workers and master to use TCP replicationErik Johnston2017-04-031-27/+19
|
* Run the reactor with the sentinel logcontextRichard van der Hoff2017-03-181-2/+6
| | | | | | This fixes a class of 'Unexpected logcontext' messages, which were happening because the logcontext was somewhat arbitrarily swapping between the sentinel and the `run` logcontext.
* Refactor logger config for workersRichard van der Hoff2017-03-101-1/+1
| | | | - to make it easier to add more config options.
* Restore default bind addressErik Johnston2017-01-101-10/+2
|
* Fix check for bind_addressJohannes Löthberg2016-12-201-2/+2
| | | | | | | The empty string is a valid setting for the bind_address option, so explicitly check for None here instead. Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
* Add support for specifying multiple bind addressesJohannes Löthberg2016-12-181-20/+34
| | | | Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
* Respect use_frozen_dicts option in workersErik Johnston2016-11-081-0/+4
|
* Enable state caches on workersErik Johnston2016-09-151-0/+1
|
* Remove log linesErik Johnston2016-08-181-2/+0
|
* Add appservice workerErik Johnston2016-08-181-0/+211