summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add a metric which increments when a request is receivedRichard van der Hoff2018-03-092-2/+26
| | | | | | It's useful to know when there are peaks in incoming requests - which isn't quite the same as there being peaks in outgoing responses, due to the time taken to handle requests.
* refactor JsonResourceRichard van der Hoff2018-03-091-32/+46
| | | | | rephrase the OPTIONS and unrecognised request handling so that they look similar to the common flow.
* Fix typo in getting replication account data processingErik Johnston2018-03-011-1/+1
|
* Fewer lies are betterErik Johnston2018-03-011-2/+2
|
* Improve caching for read_marker APIErik Johnston2018-03-013-3/+41
| | | | | | We add a new storage function to get a paritcular type of room account data. This allows us to prefill the cache when updating that acount data.
* Add some caches to help read marker APIErik Johnston2018-03-013-2/+5
|
* Log in the correct placesErik Johnston2018-03-011-2/+4
|
* Don't do preserve_fn for every requestErik Johnston2018-03-011-1/+2
|
* Add some loggingErik Johnston2018-03-011-0/+2
|
* Make repl send_event idempotent and retry on timeoutsErik Johnston2018-03-011-6/+38
| | | | | | If we treated timeouts as failures on the worker we would attempt to clean up e.g. push actions while the master might still process the event.
* Check event auth on the workerErik Johnston2018-03-011-16/+16
|
* Correctly send ratelimit and extra_users paramsErik Johnston2018-03-012-1/+15
|
* Fixup commentsErik Johnston2018-03-011-4/+4
|
* Calculate push actions on workerErik Johnston2018-02-283-26/+70
|
* Move storage functions for push calculationsErik Johnston2018-02-276-98/+101
| | | | This will allow push actions for an event to be calculated on workers.
* Merge pull request #2904 from matrix-org/erikj/receipt_cache_invalidationErik Johnston2018-02-272-14/+16
|\ | | | | Fix missing invalidations for receipt storage
| * Fix missing invalidations for receipt storageErik Johnston2018-02-212-14/+16
| |
* | Merge pull request #2903 from matrix-org/erikj/split_roommember_storeErik Johnston2018-02-272-207/+187
|\ \ | | | | | | Split out RoomMemberStore
| * \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-02-2313-594/+647
| |\ \ | | | | | | | | | | | | erikj/split_roommember_store
| * | | Update copyrightErik Johnston2018-02-233-0/+3
| | | |
| * | | Split out RoomMemberStoreErik Johnston2018-02-212-206/+184
| | | |
* | | | Merge pull request #2901 from matrix-org/erikj/split_as_storesErik Johnston2018-02-272-37/+29
|\ \ \ \ | | | | | | | | | | Split AS stores
| * | | | Add commentErik Johnston2018-02-271-0/+4
| | | | |
| * | | | Update copyrightErik Johnston2018-02-232-0/+2
| | | | |
| * | | | Split AS storesErik Johnston2018-02-212-37/+23
| |/ / /
* | | | Merge pull request #2892 from matrix-org/erikj/batch_inserts_push_actionsErik Johnston2018-02-262-23/+46
|\ \ \ \ | | | | | | | | | | Batch inserts into event_push_actions_staging
| * | | | Update commentsErik Johnston2018-02-211-3/+4
| | | | |
| * | | | Batch inserts into event_push_actions_stagingErik Johnston2018-02-202-23/+45
| | | | |
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-02-2615-687/+747
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | erikj/handle_unpersisted_events_push
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-02-2312-507/+570
| |\ \ \ \ | | | | | | | | | | | | | | | | | | erikj/split_event_push_actions
| | * \ \ \ Merge pull request #2902 from matrix-org/erikj/split_events_storeErik Johnston2018-02-233-370/+405
| | |\ \ \ \ | | | | | | | | | | | | | | Split out get_events and co into a worker store
| | | * | | | Split EventsWorkerStore into separate fileErik Johnston2018-02-233-361/+401
| | | | | | |
| | | * | | | Update copyrightErik Johnston2018-02-232-0/+2
| | | | | | |
| | | * | | | Remove redundant clockErik Johnston2018-02-231-3/+0
| | | | | | |
| | | * | | | _event_persist_queue shouldn't be in worker storeErik Johnston2018-02-231-4/+4
| | | | |/ / | | | |/| |
| | | * | | Split out get_events and co into a worker storeErik Johnston2018-02-212-356/+352
| | | | | |
| | * | | | Merge pull request #2899 from matrix-org/erikj/split_pushersErik Johnston2018-02-232-13/+10
| | |\ \ \ \ | | | | | | | | | | | | | | Split PusherStore
| | | * | | | Update copyrightErik Johnston2018-02-232-0/+2
| | | | | | |
| | | * | | | Split PusherStoreErik Johnston2018-02-212-13/+8
| | | |/ / /
| | * | | | Merge pull request #2898 from matrix-org/erikj/split_push_rules_storeErik Johnston2018-02-233-45/+64
| | |\ \ \ \ | | | | | | | | | | | | | | Split PushRulesStore
| | | * | | | Update copyrightErik Johnston2018-02-233-0/+3
| | | | | | |
| | | * | | | Split PushRulesStoreErik Johnston2018-02-213-45/+61
| | | |/ / /
| | * | | | Merge pull request #2897 from matrix-org/erikj/split_account_dataErik Johnston2018-02-234-69/+74
| | |\ \ \ \ | | | |_|_|/ | | |/| | | Split AccountDataStore and TagStore
| | | * | | Update copyrightErik Johnston2018-02-233-0/+3
| | | | | |
| | | * | | Use absolute importsErik Johnston2018-02-233-5/+5
| | | | | |
| | | * | | Split AccountDataStore and TagStoreErik Johnston2018-02-214-67/+69
| | | |/ /
| | * | | Merge pull request #2893 from matrix-org/erikj/delete_from_staging_fedErik Johnston2018-02-211-9/+17
| | |\ \ \ | | | |/ / | | |/| | Delete from push_actions_staging in federation too
| | | * | Delete from push_actions_staging in federation tooErik Johnston2018-02-201-9/+17
| | | |/
| * | | Update copyrightErik Johnston2018-02-232-0/+2
| | | |
| * | | Split out EventPushActionWorkerStoreErik Johnston2018-02-212-91/+76
| |/ /
| * | Raise exception in abstract methodErik Johnston2018-02-201-1/+1
| | |
| * | Fix commentErik Johnston2018-02-202-2/+2
| | |
| * | Use abstract base class to access stream IDsErik Johnston2018-02-202-17/+34
| | |
| * | Split ReceiptsStoreErik Johnston2018-02-203-76/+69
| | |
* | | Actually use new paramErik Johnston2018-02-211-1/+3
| | |
* | | Ensure all push actions are deleted from stagingErik Johnston2018-02-202-2/+19
| | |
* | | Refactor _set_push_actions_for_event_and_users_txn to use events_and_contextsErik Johnston2018-02-202-33/+41
|/ /
* | Merge pull request #2868 from matrix-org/erikj/refactor_media_storageErik Johnston2018-02-201-26/+11
|\ \ | |/ |/| Make store_file use store_into_file
| * Make store_file use store_into_fileErik Johnston2018-02-141-26/+11
| |
* | Update pynacl dependency to 1.2.1 or higherPascal Bach2018-02-191-1/+1
| | | | | | | | Signed-off-by: Pascal Bach <pascal.bach@nextrem.ch>
* | (Really) fix tablescan of event_push_actions on purgeRichard van der Hoff2018-02-161-1/+0
| | | | | | | | | | commit 278d21b5 added new code to avoid the tablescan, but didn't remove the old :/
* | Fix typo of double is_highlightErik Johnston2018-02-161-1/+1
| |
* | CommentsErik Johnston2018-02-163-1/+9
| |
* | Ensure that we delete staging push actions on errorsErik Johnston2018-02-152-3/+25
| |
* | Remove context.push_actionsErik Johnston2018-02-154-19/+7
| |
* | Update event_push_actions table from staging tableErik Johnston2018-02-152-22/+39
| |
* | Store push actions in staging areaErik Johnston2018-02-153-0/+54
| |
* | Don't serialize current state over replicationErik Johnston2018-02-153-8/+51
| |
* | Merge pull request #2872 from matrix-org/erikj/event_worker_dont_logErik Johnston2018-02-151-1/+10
|\ \ | | | | | | Don't log errors propogated from send_event
| * | Don't log errors propogated from send_eventErik Johnston2018-02-151-1/+10
| | |
* | | Fix state group storage bug in workersErik Johnston2018-02-151-41/+41
|/ / | | | | | | | | We needed to move `_count_state_group_hops_txn` to the StateGroupWorkerStore.
* | Merge pull request #2867 from matrix-org/rav/rework_purgeRichard van der Hoff2018-02-151-35/+83
|\ \ | | | | | | purge_history cleanups
| * | purge_history: fix sqlite syntax errorRichard van der Hoff2018-02-141-1/+4
| | | | | | | | | | | | apparently sqlite insists on indexes being named
| * | purge_history: handle sqlite asshatteryRichard van der Hoff2018-02-141-19/+27
| | | | | | | | | | | | | | | apparently creating a temporary table commits the transaction. because that's a useful thing.
| * | purge_history: fix index useRichard van der Hoff2018-02-141-0/+14
| | | | | | | | | | | | | | | event_push_actions doesn't have an index on event_id, so we need to specify room_id.
| * | Rework event purge to use a temporary tableRichard van der Hoff2018-02-141-35/+58
| | | | | | | | | | | | | | | ... which should speed things up by reducing the amount of data being shuffled across the connection
* | | Merge pull request #2769 from matrix-org/matthew/hit_the_ginRichard van der Hoff2018-02-145-20/+110
|\ \ \ | |_|/ |/| | switch back from GIST to GIN indexes
| * | remove overzealous exception handlingRichard van der Hoff2018-02-141-18/+10
| | |
| * | Merge branch 'matthew/gin_work_mem' into matthew/hit_the_ginRichard van der Hoff2018-02-1390-1492/+3304
| |\ \
| | * \ Merge branch 'develop' into matthew/gin_work_memRichard van der Hoff2018-02-1329-549/+995
| | |\ \
| | * | | Factor out common code for search insertRichard van der Hoff2018-02-041-33/+56
| | | | | | | | | | | | | | | | | | | | | | | | | we can reuse the same code as is used for event insert, for doing the background index population.
| | * | | Clean up work_mem handlingRichard van der Hoff2018-02-031-11/+41
| | | | | | | | | | | | | | | | | | | | | | | | | Add some comments and improve exception handling when twiddling work_mem for the search update
| | * | | Move store_event_search_txn to SearchStoreRichard van der Hoff2018-02-032-37/+43
| | | | | | | | | | | | | | | | | | | | | | | | | ... as a precursor to making event storing and doing the bg update share some code.
| | * | | Merge branch 'develop' into matthew/gin_work_memRichard van der Hoff2018-02-0372-902/+2203
| | |\ \ \
| | * | | | oopshera2018-01-092-2/+2
| | | | | |
| | * | | | oops, tweak work_mem when actually storingMatthew Hodgson2018-01-091-0/+2
| | | | | |
| | * | | | avoid 80s GIN inserts by tweaking work_memMatthew Hodgson2018-01-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | see https://github.com/matrix-org/synapse/issues/2753 for details
| * | | | | move search reindex to schema 47Richard van der Hoff2018-02-132-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're up to schema v47 on develop now, so this will have to go in there to have an effect. This might cause an error if somebody has already run it in the v46 guise, and runs it again in the v47 guise, because it will cause a duplicate entry in the bbackground_updates table. On the other hand, the entry is removed once it is complete, and it is unlikely that anyone other than matrix.org has run it on v46. The update itself is harmless to re-run because it deliberately copes with the index already existing.
| * | | | | GIN reindex: Fix syntax errors, improve exception handlingRichard van der Hoff2018-02-131-13/+27
| | | | | |
| * | | | | Reinstate event_search_postgres_gist handlerRichard van der Hoff2018-02-023-6/+31
| | | | | | | | | | | | | | | | | | | | | | | | People may have queued updates for this, so we can't just delete it.
| * | | | | fix GIST->GIN switchMatthew Hodgson2018-01-093-14/+37
| | | | | |
| * | | | | switch back from GIST to GIN indexesMatthew Hodgson2018-01-091-8/+13
| |/ / / /
* | | | | Merge pull request #2854 from matrix-org/erikj/event_create_workerErik Johnston2018-02-1311-20/+500
|\ \ \ \ \ | |_|_|_|/ |/| | | | Create a worker for event creation
| * | | | Move presence handling into handle_new_client_eventErik Johnston2018-02-071-6/+6
| | | | | | | | | | | | | | | | | | | | As we want to have it run on the main synapse instance
| * | | | Add event_creator workerErik Johnston2018-02-073-1/+190
| | | | |
| * | | | Add replication http endpoint for event sendingErik Johnston2018-02-078-13/+304
| | | | |
* | | | | Fix log message in purge_historyRichard van der Hoff2018-02-131-2/+1
| | | | | | | | | | | | | | | | | | | | (we don't just remove remote events)
* | | | | Merge pull request #2864 from matrix-org/rav/persist_event_cachingRichard van der Hoff2018-02-132-60/+70
|\ \ \ \ \ | | | | | | | | | | | | Use StateResolutionHandler to resolve state in persist_events
| * | | | | style nitRichard van der Hoff2018-02-131-1/+1
| | | | | |
| * | | | | Use StateResolutionHandler to resolve state in persist eventsRichard van der Hoff2018-02-051-48/+24
| | | | | | | | | | | | | | | | | | | | | | | | ... and thus benefit (hopefully) from its cache.
| * | | | | Flatten _get_new_state_after_eventsRichard van der Hoff2018-02-051-44/+46
| | | | | | | | | | | | | | | | | | | | | | | | rejig the if statements to simplify the logic and reduce indentation
| * | | | | Check that events being persisted have state_groupRichard van der Hoff2018-02-051-4/+9
| | | | | |
| * | | | | Add event_map param to resolve_state_groupsRichard van der Hoff2018-02-052-4/+31
| | | | | |
* | | | | | Fix typos in purge api & docRichard van der Hoff2018-02-131-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * It's supposed to be purge_local_events, not ..._history * Fix the doc to have valid json
* | | | | | Merge pull request #2695 from okurz/feature/allow_recent_pysamlRichard van der Hoff2018-02-131-1/+1
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | Allow use of higher versions of saml2
| * | | | | Allow use of higher versions of saml2Oliver Kurz2017-11-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The package was pinned to <4.0 with 07cf96eb because "from saml2 import config" did not work. This seems to have been fixed in the mean time in the saml2 package and therefore should not stop to use a more recent version. Signed-off-by: Oliver Kurz <okurz@suse.de>
* | | | | | Merge pull request #2857 from matrix-org/erikj/upload_storeErik Johnston2018-02-121-0/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | Tell storage providers about new file so they can upload
| * | | | | | Tell storage providers about new file so they can uploadErik Johnston2018-02-071-0/+6
| | | | | | |
* | | | | | | Merge pull request #2858 from matrix-org/rav/purge_updatesRichard van der Hoff2018-02-094-39/+88
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | delete_local_events for purge_room_history
| * | | | | | purge: move room_depth update to endRichard van der Hoff2018-02-091-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to avoid locking the table for too long
| * | | | | | delete_local_events for purge_historyRichard van der Hoff2018-02-094-13/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a flag which makes the purger delete local events
| * | | | | | purge: Move cache invalidation to more appropriate placeRichard van der Hoff2018-02-091-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | it was a bit of a non-sequitur there
| * | | | | | bump purge logging to infoRichard van der Hoff2018-02-091-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this thing takes ages and the only sign of any progress is the logs, so having some logs is useful.
| * | | | | | rename delete_old_state -> purge_historyRichard van der Hoff2018-02-092-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (beacause it deletes more than state)
* | | | | | | Remove pointless ratelimit checkErik Johnston2018-02-071-5/+0
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The intention was for the check to be called as early as possible in the request, but actually was called just before the main ratelimit check, so was fairly pointless.
* | | | | | Merge pull request #2847 from matrix-org/erikj/separate_event_creationErik Johnston2018-02-068-188/+211
|\ \ \ \ \ \ | | | | | | | | | | | | | | Split event creation into a separate handler
| * | | | | | Update copyrightErik Johnston2018-02-066-1/+6
| | | | | | |
| * | | | | | s/_create_new_client_event/create_new_client_event/Erik Johnston2018-02-062-8/+8
| | | | | | |
| * | | | | | Update places where we create eventsErik Johnston2018-02-057-38/+42
| | | | | | |
| * | | | | | Split event creation into a separate handlerErik Johnston2018-02-051-146/+160
| | | | | | |
* | | | | | | Store state groups separately from events (#2784)Erik Johnston2018-02-0610-120/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | | | | | | Merge pull request #2849 from matrix-org/rav/clean_up_state_deltaRichard van der Hoff2018-02-051-10/+23
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | Remove redundant return value from _calculate_state_delta
| * | | | | | Remove redundant return value from _calculate_state_deltaRichard van der Hoff2018-02-051-10/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we already have the state from _get_new_state_after_events, so returning it from _calculate_state_delta is just confusing.
* | | | | | | Factor out common code for search insertRichard van der Hoff2018-02-051-33/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we can reuse the same code as is used for event insert, for doing the background index population.
* | | | | | | Move store_event_search_txn to SearchStoreRichard van der Hoff2018-02-052-35/+41
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | ... as a precursor to making event storing and doing the bg update share some code.
* | | | | | Merge pull request #2844 from matrix-org/rav/evicted_metricsRichard van der Hoff2018-02-054-5/+44
|\ \ \ \ \ \ | |/ / / / / |/| | | | | montoring metrics for number of cache evictions
| * | | | | report metrics on number of cache evictionsRichard van der Hoff2018-02-054-5/+44
| | |_|_|/ | |/| | |
* | | | | Merge pull request #2791 from matrix-org/erikj/media_storage_refactorErik Johnston2018-02-053-12/+47
|\ \ \ \ \ | | | | | | | | | | | | Ensure media is in local cache before thumbnailing
| * | | | | Use better file consumerErik Johnston2018-01-181-5/+10
| | | | | |
| * | | | | Ensure media is in local cache before thumbnailingErik Johnston2018-01-183-10/+40
| | | | | |
* | | | | | Merge pull request #2845 from matrix-org/rav/urlcache_error_handlingRichard van der Hoff2018-02-021-21/+34
|\ \ \ \ \ \ | | | | | | | | | | | | | | Handle url_previews with no content-type
| * | | | | | Handle url_previews with no content-typeRichard van der Hoff2018-02-021-21/+34
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | avoid failing with an exception if the remote server doesn't give us a Content-Type header. Also, clean up the exception handling a bit.
* | | | | | Merge pull request #2842 from matrix-org/rav/state_resolution_handlerRichard van der Hoff2018-02-024-65/+116
|\ \ \ \ \ \ | | | | | | | | | | | | | | Factor out resolve_state_groups to a separate handler
| * | | | | | Factor out resolve_state_groups to a separate handlerRichard van der Hoff2018-02-013-53/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We extract the storage-independent bits of the state group resolution out to a separate functiom, and stick it in a new handler, in preparation for its use from the storage layer.
| * | | | | | Rename resolve_state_groups -> resolve_state_groups_for_eventsRichard van der Hoff2018-02-012-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (to make way for a method that actually just does the state group resolution)
* | | | | | | Merge pull request #2841 from matrix-org/rav/refactor_calc_state_deltaRichard van der Hoff2018-02-021-18/+39
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | factor _get_new_state_after_events out of _calculate_state_delta
| * | | | | | | factor _get_new_state_after_events out of _calculate_state_deltaRichard van der Hoff2018-01-311-18/+39
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | This reduces the scope of a bunch of variables
* | | | | | | Merge pull request #2836 from matrix-org/rav/resolve_state_events_docstringRichard van der Hoff2018-02-021-8/+28
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Docstring fixes
| * | | | | | | doc arg types for _seperateRichard van der Hoff2018-02-011-0/+15
| | | | | | | |
| * | | | | | | More docstring fixesRichard van der Hoff2018-02-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a couple of errors in docstrings
| * | | | | | | Fix docstring for StateHandler.resolve_state_groupsRichard van der Hoff2018-02-011-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The return type was a complete lie, so fix it
* | | | | | | | Merge branch 'develop' into travis/admin-list-mediaTravis Ralston2018-02-0140-195/+427
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | |
| * | | | | | | Merge pull request #2837 from matrix-org/rav/fix_quarantine_mediaRichard van der Hoff2018-02-011-1/+1
| |\ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | | Fix sql error in quarantine_media
| | * | | | | | Fix sql error in quarantine_mediaRichard van der Hoff2018-01-301-1/+1
| | |/ / / / /
| * | | | | | Merge pull request #2838 from matrix-org/rav/fix_logging_on_dns_failRichard van der Hoff2018-01-311-2/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Remove spurious log argument
| | * | | | | | Remove spurious log argumentRichard van der Hoff2018-01-301-2/+1
| | |/ / / / / | | | | | | | | | | | | | | | | | | | | | ... which would cause scary-looking and unhelpful errors in the log on dns fail
| * | | | | | Merge pull request #2835 from matrix-org/rav/remove_event_type_paramRichard van der Hoff2018-01-311-6/+14
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Remove unused "event_type" param on state.get_current_state_ids
| | * | | | | | docstring for get_current_state_idsRichard van der Hoff2018-01-291-0/+13
| | | | | | | |
| | * | | | | | Remove unused "event_type" param on state.get_current_state_idsRichard van der Hoff2018-01-291-6/+1
| | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this param doesn't seem to be used, and is a bit pointless anyway because it can easily be replicated by the caller. It is also horrible, because it changes the return type of the method.
| * | | | | | Merge pull request #2834 from ↵Richard van der Hoff2018-01-311-3/+3
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | matrix-org/rav/better_persist_event_exception_handling Improve exception handling in persist_event
| | * | | | | | Improve exception handling in persist_eventRichard van der Hoff2018-01-291-3/+3
| | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. use `deferred.errback()` instead of `deferred.errback(e)`, which means that a Failure object will be constructed using the current exception state, *including* its stack trace - so the stack trace is saved in the Failure, leading to better exception reports. 2. Set `consumeErrors=True` on the ObservableDeferred, because we know that there will always be at least one observer - which avoids a spurious "CRITICAL: unhandled exception in Deferred" error in the logs
| * | | | | | Merge pull request #2833 from matrix-org/rav/pusher_hacksRichard van der Hoff2018-01-311-7/+30
| |\ \ \ \ \ \ | | | |_|/ / / | | |/| | | | Logging and metrics for the http pusher
| | * | | | | Better logging when pushes failRichard van der Hoff2018-01-291-2/+8
| | | | | | |
| | * | | | | add appid/device_display_name to to pusher loggingRichard van der Hoff2018-01-291-2/+2
| | | | | | |
| | * | | | | Fix logging and add user_idRichard van der Hoff2018-01-221-2/+3
| | | | | | |
| | * | | | | logging and debug for http pusherRichard van der Hoff2018-01-221-4/+20
| | | | | | |
| * | | | | | Merge pull request #2817 from matrix-org/rav/http_conn_poolRichard van der Hoff2018-01-311-1/+13
| |\ \ \ \ \ \ | | |_|/ / / / | |/| | | | | Use a connection pool for the SimpleHttpClient
| | * | | | | Increase http conn pool sizeRichard van der Hoff2018-01-291-1/+6
| | |/ / / /
| | * | | | Use a connection pool for the SimpleHttpClientRichard van der Hoff2018-01-201-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In particular I hope this will help the pusher, which makes many requests to sygnal, and is currently negotiating SSL for each one.
| * | | | | Fix SQL for user searchRichard van der Hoff2018-01-271-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix some syntax errors for user search when search_all_users is enabled fixes #2801, hopefully
| * | | | | Merge pull request #2830 from matrix-org/rav/factor_out_get_connRichard van der Hoff2018-01-2711-130/+17
| |\ \ \ \ \ | | | | | | | | | | | | | | Factor out get_db_conn to HomeServer base class
| | * | | | | Factor out get_db_conn to HomeServer base classRichard van der Hoff2018-01-2611-130/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
| * | | | | | Merge pull request #2827 from ↵Neil Johnson2018-01-261-1/+2
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | matrix-org/fix_server_500_on_public_rooms_call_when_no_rooms_exist Fix server 500 on public rooms call when no rooms exist
| | * | | | | add white space lineNeil Johnson2018-01-261-0/+1
| | | | | | |
| | * | | | | rather than try reconstruct the results object, better to guard against the ↵Neil Johnson2018-01-261-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | xrange step argument being 0
| | * | | | | fix return type, should be a dictNeil Johnson2018-01-251-1/+1
| | | | | | |
| | * | | | | fix PEP8 violationNeil Johnson2018-01-251-1/+1
| | | | | | |
| | * | | | | remove white spaceNeil Johnson2018-01-251-1/+0
| | | | | | |
| | * | | | | synapse 500s on a call to publicRooms in the case where the number of public ↵Neil Johnson2018-01-251-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | rooms is zero, the specific cause is due to xrange trying to use a step value of zero, but if the total room number really is zero then it makes sense to just bail and save the extra processing
| * | | | | | fix thinko on 3pid whitelistingMatthew Hodgson2018-01-241-2/+2
| | | | | | |
| * | | | | | Merge pull request #2816 from matrix-org/rav/metrics_commentsRichard van der Hoff2018-01-231-1/+6
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Add some comments about the reactor tick time metric
| | * | | | | | Add some comments about the reactor tick time metricRichard van der Hoff2018-01-191-1/+6
| | | | | | | |
| * | | | | | | add ?ts massaging for ASes (#2754)Matthew Hodgson2018-01-231-6/+11
| | |/ / / / / | |/| | | | | | | | | | | | blindly implement ?ts for AS. untested
| * | | | | | Add federation_domain_whitelist option (#2820)Matthew Hodgson2018-01-2213-7/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add federation_domain_whitelist gives a way to restrict which domains your HS is allowed to federate with. useful mainly for gracefully preventing a private but internet-connected HS from trying to federate to the wider public Matrix network
| * | | | | | Merge pull request #2813 from matrix-org/matthew/registrations_require_3pidMatthew Hodgson2018-01-227-23/+177
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | add registrations_require_3pid and allow_local_3pids
| | * | | | | fix typo (thanks sytest)Matthew Hodgson2018-01-191-1/+1
| | | | | | |
| | * | | | | oops, check all login typesMatthew Hodgson2018-01-191-14/+11
| | | | | | |
| | * | | | | fix PR nitpickingMatthew Hodgson2018-01-191-3/+6
| | | | | | |
| | * | | | | trailing commasMatthew Hodgson2018-01-192-7/+7
| | | | | | |
| | * | | | | rewrite based on PR feedback:Matthew Hodgson2018-01-197-89/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ ] split config options into allowed_local_3pids and registrations_require_3pid * [ ] simplify and comment logic for picking registration flows * [ ] fix docstring and move check_3pid_allowed into a new util module * [ ] use check_3pid_allowed everywhere @erikjohnston PTAL
| | * | | | | fix up v1, and improve errorsMatthew Hodgson2018-01-194-20/+65
| | | | | | |
| | * | | | | fix pep8Matthew Hodgson2018-01-191-2/+1
| | | | | | |
| | * | | | | add registrations_require_3pidMatthew Hodgson2018-01-195-13/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lets homeservers specify a whitelist for 3PIDs that users are allowed to associate with. Typically useful for stopping people from registering with non-work emails
* | | | | | | pep8Travis Ralston2018-01-311-9/+12
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | | | | | Documentation and namingTravis Ralston2018-01-311-7/+26
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | | | | | Appease the linterTravis Ralston2018-01-201-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are ids anyways, not mxc uris. Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | | | | | Add an admin route to get all the media in a roomTravis Ralston2018-01-202-56/+97
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | This is intended to be used by administrators to monitor the media that is passing through their server, if they wish. Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | | | | Merge pull request #2814 from matrix-org/rav/fix_urlcache_thumbsRichard van der Hoff2018-01-191-0/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | Use the right path for url_preview thumbnails
| * | | | | | Use the right path for url_preview thumbnailsRichard van der Hoff2018-01-191-0/+8
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was introduced by #2627: we were overwriting the original media for url previews with the thumbnails :/ (fixes https://github.com/vector-im/riot-web/issues/6012, hopefully)
* | | | | | Fix storage provider bug introduced when renamed to store_localErik Johnston2018-01-181-1/+1
| | | | | |
* | | | | | Merge pull request #2812 from matrix-org/erikj/media_storage_provider_configErik Johnston2018-01-183-33/+101
|\ \ \ \ \ \ | | | | | | | | | | | | | | Make storage providers configurable
| * | | | | | Fix passing wrong config to provider constructorErik Johnston2018-01-181-1/+1
| | | | | | |
| * | | | | | Remove duplicate directory testErik Johnston2018-01-181-4/+0
| | | | | | |
| * | | | | | Missing staticmethodErik Johnston2018-01-181-0/+1
| | | | | | |
| * | | | | | Fixup commentsErik Johnston2018-01-182-3/+7
| | | | | | |
| * | | | | | Make storage providers more configurableErik Johnston2018-01-183-31/+98
| | | | | | |
* | | | | | | Merge pull request #2804 from matrix-org/erikj/file_consumerErik Johnston2018-01-181-0/+139
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | Add decent impl of a FileConsumer
| * | | | | | Do logcontexts correctlyErik Johnston2018-01-181-2/+2
| | | | | | |
| * | | | | | Move test stuff to testsErik Johnston2018-01-181-25/+1
| | | | | | |
| * | | | | | Make all fields privateErik Johnston2018-01-181-31/+31
| | | | | | |
| * | | | | | Ensure we registerProducer isn't called twiceErik Johnston2018-01-181-0/+3
| | | | | | |
| * | | | | | Fix _notify_empty typoErik Johnston2018-01-181-1/+1
| | | | | | |
| * | | | | | Move definition of paused_producer to __init__Erik Johnston2018-01-181-2/+4
| | | | | | |
| * | | | | | Fix commentsErik Johnston2018-01-181-3/+3
| | | | | | |
| * | | | | | Add decent impl of a FileConsumerErik Johnston2018-01-171-0/+158
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Twisted core doesn't have a general purpose one, so we need to write one ourselves. Features: - All writing happens in background thread - Supports both push and pull producers - Push producers get paused if the consumer falls behind
* | / / / / Fix typo in thumbnail resource causing access times to be incorrectErik Johnston2018-01-181-2/+2
| |/ / / / |/| | | |
* | | | | Fix bugs in block metricsRichard van der Hoff2018-01-181-2/+4
| | | | | | | | | | | | | | | | | | | | ... which I introduced in #2785
* | | | | Merge pull request #2809 from matrix-org/rav/metrics_errorsRichard van der Hoff2018-01-181-1/+8
|\ \ \ \ \ | |_|/ / / |/| | | | better exception logging in callbackmetrics
| * | | | better exception logging in callbackmetricsRichard van der Hoff2018-01-181-1/+8
| | | | | | | | | | | | | | | | | | | | when we fail to render a metric, give a clue as to which metric it was
* | | | | Merge pull request #2805 from matrix-org/rav/log_state_resRichard van der Hoff2018-01-171-0/+6
|\ \ \ \ \ | |/ / / / |/| | | | Log room when doing state resolution
| * | | | Log room when doing state resolutionRichard van der Hoff2018-01-171-0/+6
| | | | | | | | | | | | | | | | | | | | Mostly because it helps figure out what is prompting the resolution
* | | | | Merge pull request #2783 from matrix-org/erikj/media_last_accessedErik Johnston2018-01-175-11/+64
|\ \ \ \ \ | | | | | | | | | | | | Keep track of last access time for local media
| * | | | | Remove lost commentErik Johnston2018-01-171-3/+0
| | | | | |
| * | | | | Update last access time when thumbnails are viewedErik Johnston2018-01-171-0/+2
| | | | | |
| * | | | | Keep track of last access time for local mediaErik Johnston2018-01-174-11/+65
| | |/ / / | |/| | |
* | | | | Merge pull request #2803 from matrix-org/matthew/fix-userdir-sqlMatthew Hodgson2018-01-171-2/+7
|\ \ \ \ \ | | | | | | | | | | | | fix SQL when searching all users
| * | | | | fix SQL when searching all usersMatthew Hodgson2018-01-171-2/+7
| | | | | |
* | | | | | Split resolve_events into two functionsRichard van der Hoff2018-01-172-20/+29
|/ / / / / | | | | | | | | | | | | | | | ... so that the return type doesn't depend on the arg types
* | | | | Merge pull request #2795 from matrix-org/rav/track_db_schedulingRichard van der Hoff2018-01-175-4/+43
|\ \ \ \ \ | | | | | | | | | | | | Track DB scheduling delay per-request
| * \ \ \ \ Merge remote-tracking branch 'origin/develop' into rav/track_db_schedulingRichard van der Hoff2018-01-175-34/+78
| |\ \ \ \ \
| * | | | | | Track DB scheduling delay per-requestRichard van der Hoff2018-01-165-4/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | | Merge branch 'rav/db_txn_time_in_millis' into rav/track_db_schedulingRichard van der Hoff2018-01-164-16/+34
| |\ \ \ \ \ \
* | \ \ \ \ \ \ Merge pull request #2797 from matrix-org/rav/user_id_checkingRichard van der Hoff2018-01-172-8/+19
|\ \ \ \ \ \ \ \ | |_|_|/ / / / / |/| | | | | | | Sanity checking for user ids
| * | | | | | | Sanity checking for user idsRichard van der Hoff2018-01-172-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Check the user_id passed to a couple of APIs for validity, to avoid "IndexError: list index out of range" exception which looks scary and results in a 500 rather than a more useful error. Fixes #1432, among other things
* | | | | | | | Merge pull request #2793 from matrix-org/rav/db_txn_time_in_millisRichard van der Hoff2018-01-174-10/+17
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Track db txn time in millisecs
| * | | | | | | | Merge branch 'develop' into rav/db_txn_time_in_millisRichard van der Hoff2018-01-174-25/+69
| |\| | | | | | | | | |_|/ / / / / | |/| | | | | |
| * | | | | | | Track db txn time in millisecsRichard van der Hoff2018-01-164-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to reduce the amount of floating-point foo we do.
* | | | | | | | Merge pull request #2796 from matrix-org/rav/fix_closed_connection_errorsRichard van der Hoff2018-01-171-9/+9
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Fix 'NoneType' object has no attribute 'writeHeaders'
| * \ \ \ \ \ \ \ Merge branch 'develop' into rav/fix_closed_connection_errorsRichard van der Hoff2018-01-175-32/+87
| |\ \ \ \ \ \ \ \ | | | |/ / / / / / | | |/| | | | | |
| * | | | | | | | Fix 'NoneType' object has no attribute 'writeHeaders'Richard van der Hoff2018-01-161-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid throwing a (harmless) exception when we try to write an error response to an http request where the client has disconnected. This comes up as a CRITICAL error in the logs which tends to mislead people into thinking there's an actual problem
* | | | | | | | | Merge branch 'develop' into rav/rework_run_interactionRichard van der Hoff2018-01-175-32/+87
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | / / / / / | |_|_|/ / / / / |/| | | | | | |
| * | | | | | | Merge remote-tracking branch 'origin/develop' into rav/optimise_logging_contextRichard van der Hoff2018-01-174-25/+69
| |\ \ \ \ \ \ \ | | |_|/ / / / / | |/| | / / / / | | | |/ / / / | | |/| | | |
| | * | | | | Merge pull request #2789 from matrix-org/erikj/fix_thumbnailsErik Johnston2018-01-173-24/+68
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | Fix thumbnailing remote files
| | | * | | | | Add docstringErik Johnston2018-01-171-1/+1
| | | | | | | |
| | | * | | | | Use local varsErik Johnston2018-01-161-6/+2
| | | | | | | |
| | | * | | | | Change _generate_thumbnails to take media_typeErik Johnston2018-01-162-7/+10
| | | | | | | |
| | | * | | | | Move setting of file_id up to callerErik Johnston2018-01-162-13/+14
| | | | | | | |
| | | * | | | | Fix typoErik Johnston2018-01-161-7/+10
| | | | | | | |
| | | * | | | | Fix up log linesErik Johnston2018-01-162-7/+10
| | | | | | | |
| | | * | | | | Correctly use server_name/file_id when generating/fetching remote thumbnailsErik Johnston2018-01-162-5/+8
| | | | | | | |
| | | * | | | | Log when we respond with 404Erik Johnston2018-01-162-1/+8
| | | | | | | |
| | | * | | | | Fix thumbnailing remote filesErik Johnston2018-01-162-2/+30
| | | | | | | |
| | * | | | | | fix typoMatthew Hodgson2018-01-161-1/+1
| | | |/ / / / | | |/| | | |
| * / | | | | Optimise LoggingContext creation and copyingRichard van der Hoff2018-01-161-7/+18
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that the only thing we use the __dict__ of LoggingContext for is `request`, and given we create lots of LoggingContexts and then copy them every time we do a db transaction or log line, using the __dict__ seems a bit redundant. Let's try to optimise things by making the request attribute explicit.
* / / / / / rework runInteraction in terms of runConnectionRichard van der Hoff2018-01-161-20/+31
|/ / / / / | | | | | | | | | | | | | | | ... so that we can share the code
* | | | | Merge pull request #2785 from matrix-org/rav/reorganise_metrics_againRichard van der Hoff2018-01-163-39/+151
|\ \ \ \ \ | | | | | | | | | | | | Reorganise request and block metrics
| * | | | | Reorganise request and block metricsRichard van der Hoff2018-01-152-25/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to circumvent the number of duplicate foo:count metrics increasing without bounds, it's time for a rearrangement. The following are all deprecated, and replaced with synapse_util_metrics_block_count: synapse_util_metrics_block_timer:count synapse_util_metrics_block_ru_utime:count synapse_util_metrics_block_ru_stime:count synapse_util_metrics_block_db_txn_count:count synapse_util_metrics_block_db_txn_duration:count The following are all deprecated, and replaced with synapse_http_server_response_count: synapse_http_server_requests synapse_http_server_response_time:count synapse_http_server_response_ru_utime:count synapse_http_server_response_ru_stime:count synapse_http_server_response_db_txn_count:count synapse_http_server_response_db_txn_duration:count The following are renamed (the old metrics are kept for now, but deprecated): synapse_util_metrics_block_timer:total -> synapse_util_metrics_block_time_seconds synapse_util_metrics_block_ru_utime:total -> synapse_util_metrics_block_ru_utime_seconds synapse_util_metrics_block_ru_stime:total -> synapse_util_metrics_block_ru_stime_seconds synapse_util_metrics_block_db_txn_count:total -> synapse_util_metrics_block_db_txn_count synapse_util_metrics_block_db_txn_duration:total -> synapse_util_metrics_block_db_txn_duration_seconds synapse_http_server_response_time:total -> synapse_http_server_response_time_seconds synapse_http_server_response_ru_utime:total -> synapse_http_server_response_ru_utime_seconds synapse_http_server_response_ru_stime:total -> synapse_http_server_response_ru_stime_seconds synapse_http_server_response_db_txn_count:total -> synapse_http_server_response_db_txn_count synapse_http_server_response_db_txn_duration:total synapse_http_server_response_db_txn_duration_seconds
| * | | | | mechanism to render metrics with alternative namesRichard van der Hoff2018-01-151-13/+40
| | | | | |
| * | | | | Add some comments to metrics classesRichard van der Hoff2018-01-151-1/+27
| | | | | |
* | | | | | Merge pull request #2790 from matrix-org/rav/preserve_event_logcontext_leakRichard van der Hoff2018-01-161-1/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix a logcontext leak in persist_events