summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Change is_host_joined to use current_state tableErik Johnston2017-06-094-54/+28
| | | | | | This bypasses a bug where using the state groups to figure out if a host is in a room sometimes errors if the servers isn't in the room. (For example when the server rejected an invite to a remote room)
* Ensure we don't use unpersisted state group as prev groupErik Johnston2017-06-082-7/+19
|
* Merge pull request #2259 from matrix-org/erikj/fix_state_woesErik Johnston2017-06-073-10/+24
|\ | | | | Fix bug where state_group tables got corrupted
| * Fix bug where state_group tables got corruptedErik Johnston2017-06-073-10/+24
| | | | | | | | | | | | | | | | 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.
* | Merge pull request #2258 from matrix-org/erikj/user_dirErik Johnston2017-06-072-3/+3
|\ \ | | | | | | Don't start user_directory handling on workers
| * | Don't start user_directory handling on workersErik Johnston2017-06-072-3/+3
| | |
* | | Merge pull request #2248 from matrix-org/erikj/state_fixupErik Johnston2017-06-076-56/+154
|\ \ \ | |/ / |/| | Faster cache for get_joined_hosts
| * | CommentsErik Johnston2017-06-072-0/+15
| | |
| * | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/state_fixupErik Johnston2017-06-0716-12/+1175
| |\ \
| * | | Remove spurious log linesErik Johnston2017-06-073-4/+0
| | | |
| * | | Handle None state group correctlyErik Johnston2017-05-262-4/+7
| | | |
| * | | Fix typing testsErik Johnston2017-05-261-7/+5
| | | |
| * | | Faster cache for get_joined_hostsErik Johnston2017-05-255-29/+117
| | | |
| * | | Don't return weird prev_groupErik Johnston2017-05-251-8/+13
| | | |
| * | | Remove unused optionsErik Johnston2017-05-251-11/+4
| | | |
* | | | Add some logging to user directoryErik Johnston2017-06-071-0/+7
| | | |
* | | | When pruning, delete from device_lists_outbound_last_successErik Johnston2017-06-071-0/+8
| | | |
* | | | Keep pruning background taskErik Johnston2017-06-071-0/+45
| | | |
* | | | Split up device_lists_outbound_pokes table for faster updates.Erik Johnston2017-06-072-58/+57
| |/ / |/| |
* | | Increase size of IP cacheErik Johnston2017-06-071-1/+6
| | |
* | | Fix typo when getting app nameErik Johnston2017-06-061-1/+1
| | |
* | | Fix wrong number of argumentsErik Johnston2017-06-061-1/+1
| | |
* | | Handle profile updates in user directoryErik Johnston2017-06-012-0/+74
| | |
* | | Fix sqliteErik Johnston2017-06-011-1/+1
| | |
* | | Split the table in twoErik Johnston2017-06-014-31/+138
| | |
* | | Tweak search queryErik Johnston2017-06-011-1/+1
| | |
* | | Tweak search queryErik Johnston2017-06-011-2/+2
| | |
* | | CommentsErik Johnston2017-06-011-3/+3
| | |
* | | Check if host is still in roomErik Johnston2017-06-011-0/+11
| | |
* | | Remove spurious inlineCallbacksErik Johnston2017-06-011-1/+0
| | |
* | | Fix removing usersErik Johnston2017-06-011-0/+5
| | |
* | | Bug fixes and loggingErik Johnston2017-06-012-2/+22
| | | | | | | | | | | | | | | - Check if room is public when a user joins before adding to user dir - Fix typo of field name "content.join_rules" -> "content.join_rule"
* | | Order by if they have profile infoErik Johnston2017-06-011-2/+11
| | |
* | | Use prefix matchingErik Johnston2017-06-011-5/+29
| | |
* | | Comment on why arbitrary commentsErik Johnston2017-05-311-2/+6
| | |
* | | Use unique indicesErik Johnston2017-05-311-2/+2
| | |
* | | Comment briefly on how we keep user_directory up to dateErik Johnston2017-05-311-0/+10
| | |
* | | Convert to intErik Johnston2017-05-311-0/+1
| | |
* | | Lifts things into separate functionErik Johnston2017-05-311-56/+54
| | |
* | | TyposErik Johnston2017-05-311-8/+8
| | |
* | | Fix testsErik Johnston2017-05-312-2/+3
| | |
* | | Fix typoErik Johnston2017-05-311-1/+1
| | |
* | | Limit number of things we fetch out of the dbErik Johnston2017-05-311-9/+30
| | |
* | | Add stream change cacheErik Johnston2017-05-314-1/+34
| | |
* | | Split out directory and search tablesErik Johnston2017-05-312-29/+56
| | |
* | | Pull max id from correct tableErik Johnston2017-05-312-4/+10
| | |
* | | Handle the server leaving a public roomErik Johnston2017-05-314-3/+46
| | |
* | | Add commentsErik Johnston2017-05-314-45/+173
| | |
* | | Weight differentlyErik Johnston2017-05-312-10/+31
| | |
* | | Use POSTErik Johnston2017-05-311-1/+1
| | |
* | | Add REST APIErik Johnston2017-05-312-0/+61
| | |
* | | Add searchErik Johnston2017-05-312-0/+38
| | |
* | | Update room column when room becomes unpublicErik Johnston2017-05-312-2/+31
| | |
* | | Add call laterErik Johnston2017-05-311-0/+2
| | |
* | | Start laterErik Johnston2017-05-311-1/+4
| | |
* | | Don't go round in circlesErik Johnston2017-05-311-4/+2
| | |
* | | Add user_directory to databaseErik Johnston2017-05-316-1/+444
| | |
* | | Add commentErik Johnston2017-05-301-1/+1
| | |
* | | Add clobbered event_idErik Johnston2017-05-302-1/+3
| | |
* | | Add current_state_delta_stream tableErik Johnston2017-05-302-8/+48
|/ /
* | Merge pull request #2247 from matrix-org/erikj/auth_eventErik Johnston2017-05-245-13/+118
|\ \ | | | | | | Only store event_auth for state events
| * | Add background task to clear out old event_authErik Johnston2017-05-243-1/+74
| | |
| * | Only store event_auth for state eventsErik Johnston2017-05-243-12/+44
| | |
* | | Merge pull request #2243 from matrix-org/matthew/fix-url-preview-length-againErik Johnston2017-05-231-0/+2
|\ \ \ | | | | | | | | actually trim oversize og:description meta
| * | | actually trim oversize og:description metaMatthew Hodgson2017-05-221-0/+2
| | | |
* | | | Merge pull request #2237 from matrix-org/erikj/sync_key_countErik Johnston2017-05-234-15/+34
|\ \ \ \ | |_|/ / |/| | | Add count of one time keys to sync stream
| * | | Remove redundant invalidationErik Johnston2017-05-231-3/+0
| | | |
| * | | Missed an invalidationErik Johnston2017-05-231-0/+3
| | | |
| * | | Add missing storage function to slave storeErik Johnston2017-05-221-0/+2
| | | |
| * | | Stream count_e2e_one_time_keys cache invalidationErik Johnston2017-05-221-13/+18
| | | |
| * | | Add count of one time keys to sync streamErik Johnston2017-05-192-0/+12
| | | |
* | | | Only load jinja2 templates onceErik Johnston2017-05-224-60/+105
| | | | | | | | | | | | | | | | | | | | Instead of every time a new email pusher is created, as loading jinja2 templates is slow.
* | | | Merge pull request #2241 from matrix-org/erikj/fix_notifsErik Johnston2017-05-221-4/+32
|\ \ \ \ | | | | | | | | | | Correctly calculate push rules for member events
| * | | | CommentErik Johnston2017-05-221-0/+2
| | | | |
| * | | | Remove spurious log level guardsErik Johnston2017-05-221-6/+3
| | | | |
| * | | | Check if current event is a membership eventErik Johnston2017-05-221-4/+9
| | | | |
| * | | | Add debug loggingErik Johnston2017-05-221-0/+24
| | | | |
* | | | | Merge pull request #2240 from matrix-org/erikj/cache_list_fixErik Johnston2017-05-221-16/+40
|\ \ \ \ \ | |/ / / / |/| | | | Update list cache to handle one arg case
| * | | | Pull out if statement from for loopErik Johnston2017-05-221-6/+14
| | | | |
| * | | | Update list cache to handle one arg caseErik Johnston2017-05-221-17/+33
| |/ / / | | | | | | | | | | | | | | | | | | | | We update the normal cache descriptors to handle caches with a single argument specially so that the key wasn't a 1-tuple. We need to update the cache list to be aware of this.
* | | | CommentErik Johnston2017-05-221-1/+4
| | | |
* | | | Use tuple unpackingErik Johnston2017-05-221-2/+2
| | | |
* | | | Speed up calculating push rulesErik Johnston2017-05-191-8/+19
|/ / /
* | | Fix invalidation of get_users_with_read_receipts_in_roomErik Johnston2017-05-191-1/+3
| | |
* | | Move invalidation cb to its own structureErik Johnston2017-05-191-6/+15
| | |
* | | Store ActionGenerator in HomeServerErik Johnston2017-05-195-7/+10
| | |
* | | Don't push users who have leftErik Johnston2017-05-181-1/+4
| | |
* | | Increase size of push rule cachesErik Johnston2017-05-181-2/+2
| | |
* | | Make get_if_app_services_interested_in_user fasterErik Johnston2017-05-184-13/+34
| | |
* | | Remove size of push get_rules cacheErik Johnston2017-05-181-1/+1
| | |
* | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-05-181-1/+1
|\ \ \ | | |/ | |/|
| * | Bump changelog and version github/release-v0.21.0 release-v0.21.0Erik Johnston2017-05-181-1/+1
| | |
* | | Merge pull request #2177 from matrix-org/erikj/faster_push_rulesErik Johnston2017-05-183-47/+252
|\ \ \ | |_|/ |/| | Make calculating push actions faster
| * | Add commentErik Johnston2017-05-181-0/+3
| | |
| * | Faster push rule calculation via push specific cacheErik Johnston2017-05-173-47/+249
| | | | | | | | | | | | | | | We add a push rule specific cache that ensures that we can reuse calculated push rules appropriately when a user join/leaves.
* | | Merge pull request #2230 from matrix-org/erikj/speed_up_get_stateErik Johnston2017-05-172-40/+57
|\ \ \ | |/ / |/| | Make get_state_groups_from_groups faster.
| * | Make get_state_groups_from_groups faster.Erik Johnston2017-05-172-40/+57
| |/ | | | | | | | | | | | | | | | | Most of the time was spent copying a dict to filter out sentinel values that indicated that keys did not exist in the dict. The sentinel values were added to ensure that we cached the non-existence of keys. By updating DictionaryCache to keep track of which keys were known to not exist itself we can remove a dictionary copy.
* | Merge pull request #2216 from slipeer/app_services_interested_in_userErik Johnston2017-05-172-3/+6
|\ \ | |/ |/| Fix users claimed non-exclusively by an app service don't get notific…
| * Fix users claimed non-exclusively by an app service don't get notifications ↵Slipeer2017-05-112-3/+6
| | | | | | | | #2211
* | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.21.0Erik Johnston2017-05-171-3/+24
|\ \
| * | CommentErik Johnston2017-05-171-0/+5
| | |
| * | Short circuit when we have delta idsErik Johnston2017-05-171-3/+19
| | |
* | | Bump changelog and versionErik Johnston2017-05-171-1/+1
|/ /
* | Merge pull request #2228 from matrix-org/erikj/speed_up_get_hostsErik Johnston2017-05-162-2/+4
|\ \ | | | | | | Speed up get_joined_hosts
| * | Speed up get_joined_hostsErik Johnston2017-05-162-2/+4
| | |
* | | Merge pull request #2227 from matrix-org/erikj/presence_cachesErik Johnston2017-05-162-4/+4
|\ \ \ | | | | | | | | Make presence use cached users/hosts in room
| * | | Make presence use cached users/hosts in roomErik Johnston2017-05-162-4/+4
| |/ /
* / / Speed up get_domain_from_idErik Johnston2017-05-161-3/+3
|/ /
* | Merge pull request #2224 from matrix-org/erikj/prefill_stateErik Johnston2017-05-163-9/+26
|\ \ | | | | | | Prefill state caches
| * | Remove spurious merge artifactsErik Johnston2017-05-161-13/+0
| | |
| * | Take a copy before prefilling, as it may be a frozendictErik Johnston2017-05-161-1/+1
| | |
| * | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/prefill_stateErik Johnston2017-05-155-1/+29
| |\ \
| * | | Update commentErik Johnston2017-05-151-1/+2
| | | |
| * | | CommentsErik Johnston2017-05-152-3/+6
| | | |
| * | | Add more granular event send metricsErik Johnston2017-05-151-0/+12
| | | |
| * | | Prefill state cachesErik Johnston2017-05-153-6/+20
| | | |
* | | | Merge pull request #2218 from matrix-org/rav/event_search_indexRichard van der Hoff2017-05-164-12/+63
|\ \ \ \ | |_|/ / |/| | | Add an index to event_search
| * | | Add a comment to old deltaRichard van der Hoff2017-05-111-0/+4
| | | |
| * | | Don't create event_search index on sqliteRichard van der Hoff2017-05-112-3/+11
| | | | | | | | | | | | | | | | ... because the table is virtual
| * | | Add more logging for purgingRichard van der Hoff2017-05-111-7/+14
| | | | | | | | | | | | | | | | Log the number of events we will be deleting at info.
| * | | Add an index to event_searchRichard van der Hoff2017-05-113-3/+35
| |/ / | | | | | | | | | - to make the purge API quicker
* | | Merge pull request #2221 from psaavedra/sync_timeline_limit_filter_by_nameErik Johnston2017-05-154-0/+26
|\ \ \ | | | | | | | | Configurable maximum number of events requested by /sync and /messages
| * | | Fixed syntax nitsPablo Saavedra2017-05-152-5/+6
| | | |
| * | | Fixed implementation errorsPablo Saavedra2017-05-152-3/+7
| | | | | | | | | | | | | | | | | | | | * Added HS as property in SyncRestServlet * Fixed set_timeline_upper_limit function implementat¡ion
| * | | Configurable maximum number of events requested by /sync and /messages (#2220)Pablo Saavedra2017-05-134-0/+21
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the limit on the returned events in the timeline in the get and sync operations. The default value is -1, means no upper limit. For example, using `filter_timeline_limit: 5000`: POST /_matrix/client/r0/user/user:id/filter { room: { timeline: { limit: 1000000000000000000 } } } GET /_matrix/client/r0/user/user:id/filter/filter:id { room: { timeline: { limit: 5000 } } } The server cuts down the room.timeline.limit.
* / / Don't log exceptions for NotRetryingDestinationErik Johnston2017-05-151-1/+3
|/ /
* | Merge pull request #2214 from matrix-org/rav/hurry_up_purgeRichard van der Hoff2017-05-111-20/+42
|\ \ | |/ |/| When purging, don't de-delta state groups we're about to delete
| * Tidy purge code and add some commentsRichard van der Hoff2017-05-111-12/+19
| | | | | | | | Try to make this clearer with more comments and some variable renames
| * Don't de-delta state groups we're about to deleteRichard van der Hoff2017-05-101-11/+9
| |
| * add some logging to purge_historyRichard van der Hoff2017-05-101-4/+21
| |
* | Modify condition on empty localpartLuke Barnard2017-05-101-1/+1
| |
* | Modify register/available to be GET with query paramLuke Barnard2017-05-102-5/+11
|/ | | | | | | - GET is now the method for register/available - a query parameter "username" is now used Also, empty usernames are now handled with an error message on registration or via register/available: `User ID cannot be empty`
* Merge pull request #2208 from matrix-org/erikj/ratelimit_overridErik Johnston2017-05-106-19/+93
|\ | | | | Add per user ratelimiting overrides
| * Add per user ratelimiting overridesErik Johnston2017-05-106-19/+93
| |
* | Merge pull request #2206 from matrix-org/rav/one_time_key_upload_change_sigRichard van der Hoff2017-05-103-36/+107
|\ \ | | | | | | Allow clients to upload one-time-keys with new sigs
| * | Replace some instances of preserve_context_over_deferredRichard van der Hoff2017-05-091-3/+3
| | |
| * | Do some logging when one-time-keys get claimedRichard van der Hoff2017-05-092-0/+20
| | | | | | | | | | | | | | | might help us figure out if https://github.com/vector-im/riot-web/issues/3868 has happened.
| * | Allow clients to upload one-time-keys with new sigsRichard van der Hoff2017-05-092-33/+84
| |/ | | | | | | | | | | | | When a client retries a key upload, don't give an error if the signature has changed (but the key is the same). Fixes https://github.com/vector-im/riot-android/issues/1208, hopefully.
* / Change register/available to POST (from GET)Luke Barnard2017-05-101-1/+1
|/
* Merge branch 'release-v0.21.0' of github.com:matrix-org/synapse into developErik Johnston2017-05-081-1/+1
|\
| * Bump version and changelog v0.21.0-rc2Erik Johnston2017-05-081-1/+1
| |
| * Bump version and changelog v0.21.0-rc1Erik Johnston2017-05-081-1/+1
| |
* | Merge pull request #2203 from matrix-org/erikj/event_cache_hit_ratioErik Johnston2017-05-083-5/+27
|\ \ | | | | | | Don't update event cache hit ratio from get_joined_users
| * | Expand docstring a bitErik Johnston2017-05-081-1/+7
| | |
| * | Don't update event cache hit ratio from get_joined_usersErik Johnston2017-05-083-5/+21
| | | | | | | | | | | | | | | Otherwise the hit ration of plain get_events gets completely skewed by calls to get_joined_users* functions.
* | | Merge pull request #2201 from matrix-org/erikj/store_device_cacheErik Johnston2017-05-081-3/+22
|\ \ \ | | | | | | | | Cache check to see if device exists
| * | | Add missing yieldsErik Johnston2017-05-081-2/+4
| | | |
| * | | Invalidate cache on device deletionErik Johnston2017-05-081-2/+6
| | | |
| * | | CommentErik Johnston2017-05-081-0/+2
| | | |
| * | | Cache check to see if device existsErik Johnston2017-05-081-1/+12
| |/ /
* / / Cache one time key countsErik Johnston2017-05-081-0/+9
|/ /
* | Increase client_ip cache sizeErik Johnston2017-05-081-0/+1
| |
* | Merge pull request #2200 from matrix-org/erikj/revert_pushErik Johnston2017-05-084-24/+53
|\ \ | | | | | | Revert speed up push
| * | Revert "Remove unused import"Erik Johnston2017-05-081-0/+1
| | | | | | | | | | | | This reverts commit ab37bef83bebd7cdaeb7cfd98553d18883d09103.
| * | Revert "We don't care about forgotten rooms"Erik Johnston2017-05-081-0/+12
| | | | | | | | | | | | This reverts commit ad8b316939d59230526e60660caf9094cff62c8f.
| * | Revert "Speed up filtering of a single event in push"Erik Johnston2017-05-084-24/+40
| |/ | | | | | | This reverts commit 421fdf74609439edaaffce117436e6a6df147841.
* | Merge pull request #2190 from matrix-org/erikj/mark_remote_as_back_moreErik Johnston2017-05-052-7/+9
|\ \ | | | | | | Always mark remotes as up if we receive a signed request from them
| * | Use preserve_fn and add logsErik Johnston2017-05-051-1/+3
| | |
| * | Remove redundant reset of destination timersErik Johnston2017-05-051-7/+0
| | |
| * | Always mark remotes as up if we receive a signed request from themErik Johnston2017-05-051-0/+7
| | |
* | | Merge pull request #2189 from matrix-org/erikj/handle_remote_device_listErik Johnston2017-05-051-1/+28
|\ \ \ | |_|/ |/| | Handle exceptions thrown in handling remote device list updates
| * | CommentErik Johnston2017-05-051-0/+6
| | |
| * | Add comment and TODOErik Johnston2017-05-051-0/+6
| | |
| * | Handle exceptions thrown in handling remote device list updatesErik Johnston2017-05-051-1/+16
| |/
* | Merge pull request #2192 from matrix-org/kegan/simple-http-client-timeoutsKegsay2017-05-051-14/+21
|\ \ | | | | | | Rewrite SimpleHttpClient.request to include timeouts
| * | Remember how twisted worksKegan Dougal2017-05-051-2/+2
| | |
| * | Include the clockKegan Dougal2017-05-051-0/+1
| | |
| * | Rewrite SimpleHttpClient.request to include timeoutsKegan Dougal2017-05-051-13/+19
| | | | | | | | | | | | Fixes #2191
* | | Merge pull request #2176 from matrix-org/erikj/faster_get_joinedErik Johnston2017-05-051-16/+42
|\ \ \ | | | | | | | | Make get_joined_users faster
| * | | FixesErik Johnston2017-05-051-3/+4
| | | |
| * | | Add commentErik Johnston2017-05-041-0/+3
| | | |
| * | | Make get_joined_users fasterErik Johnston2017-05-031-16/+38
| | | |
* | | | Merge pull request #2185 from matrix-org/erikj/smaller_cachesErik Johnston2017-05-052-11/+35
|\ \ \ \ | | | | | | | | | | Optimise caches for single key
| * | | | Optimise caches with single keyErik Johnston2017-05-041-9/+33
| | | | |
| * | | | Reduce size of get_users_in_roomErik Johnston2017-05-041-2/+2
| | |_|/ | |/| |
* | | | Merge pull request #2174 from matrix-org/erikj/current_cache_hostsErik Johnston2017-05-054-5/+54
|\ \ \ \ | |_|_|/ |/| | | Add cache for get_current_hosts_in_room
| * | | Intern host stringsErik Johnston2017-05-041-1/+2
| | | |
| * | | Make caches biggerErik Johnston2017-05-041-1/+1
| | | |
| * | | Fix comment and num argsErik Johnston2017-05-042-2/+2
| | | |
| * | | Add new storage functions to slave storeErik Johnston2017-05-041-0/+3
| | | |
| * | | Add cache for get_current_hosts_in_roomErik Johnston2017-05-023-5/+50
| | |/ | |/|
* | | Revert "Prefill state caches"Erik Johnston2017-05-043-27/+9
| | |
* | | Merge pull request #2183 from matrix-org/luke/username-availabilityLuke Barnard2017-05-041-0/+41
|\ \ \ | |_|/ |/| | Implement username availability checker
| * | Appease the flake8 godsLuke Barnard2017-05-031-5/+10
| | |
| * | Implement username availability checkerLuke Barnard2017-05-031-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Outlined here: https://github.com/vector-im/riot-web/issues/3605#issuecomment-298679388 ```HTTP GET /_matrix/.../register/available { "username": "desiredlocalpart123" } ``` If available, the response looks like ```HTTP HTTP/1.1 200 OK { "available": true } ``` Otherwise, ```HTTP HTTP/1.1 429 { "errcode": "M_LIMIT_EXCEEDED", "error": "Too Many Requests", "retry_after_ms": 2000 } ``` or ```HTTP HTTP/1.1 400 { "errcode": "M_USER_IN_USE", "error": "User ID already taken." } ``` or ```HTTP HTTP/1.1 400 { "errcode": "M_INVALID_USERNAME", "error": "Some reason for username being invalid" } ```
* | | Merge pull request #2147 from matrix-org/dbkr/http_request_propagate_errorDavid Baker2017-05-033-4/+41
|\ \ \ | | | | | | | | Propagate errors sensibly from proxied IS requests
| * | | No need for the exception variableDavid Baker2017-05-031-1/+1
| | | |
| * | | List caught expection typesDavid Baker2017-05-031-1/+1
| | | |
| * | | Remove debuggingDavid Baker2017-04-261-2/+1
| | | |
| * | | Revert accidental commitDavid Baker2017-04-261-4/+4
| | | |
| * | | Merge remote-tracking branch 'origin/develop' into ↵David Baker2017-04-2615-109/+209
| |\ \ \ | | | | | | | | | | | | | | | dbkr/http_request_propagate_error
| * | | | Fix get_jsonDavid Baker2017-04-261-5/+4
| | | | |
| * | | | Use CodeMessageException subclass insteadDavid Baker2017-04-254-61/+51
| | | | | | | | | | | | | | | | | | | | | | | | | Parse json errors from get_json client methods and throw special errors.
| * | | | Need the HTTP status codeDavid Baker2017-04-211-5/+5
| | | | |
| * | | | Do the same for get_jsonDavid Baker2017-04-211-8/+21
| | | | |
| * | | | Don't error for 3xx responsesDavid Baker2017-04-211-1/+1
| | | | |
| * | | | Merge remote-tracking branch 'origin/develop' into ↵David Baker2017-04-216-1/+167
| |\ \ \ \ | | | | | | | | | | | | | | | | | | dbkr/http_request_propagate_error
| * | | | | Propagate errors sensibly from proxied IS requestsDavid Baker2017-04-213-6/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we're proxying Matrix endpoints, parse out Matrix error responses and turn them into SynapseErrors so they can be propagated sensibly upstream.
* | | | | | Merge pull request #2175 from matrix-org/erikj/prefill_stateErik Johnston2017-05-033-9/+27
|\ \ \ \ \ \ | | | | | | | | | | | | | | Prefill state caches
| * | | | | | Update commentErik Johnston2017-05-031-1/+2
| | | | | | |
| * | | | | | CommentsErik Johnston2017-05-032-3/+6
| | | | | | |
| * | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/prefill_stateErik Johnston2017-05-036-3/+32
| |\ \ \ \ \ \
| * | | | | | | Prefill state cachesErik Johnston2017-05-023-6/+18
| | |_|_|_|_|/ | |/| | | | |
* | | | | | | Merge pull request #2170 from matrix-org/erikj/fed_hole_stateErik Johnston2017-05-031-21/+12
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | Don't fetch state for missing events that we fetched
| * | | | | | Merge together redundant calculations/loggingErik Johnston2017-05-031-9/+2
| | | | | | |
| * | | | | | FixupErik Johnston2017-04-281-10/+4
| | | | | | |
| * | | | | | Remove unncessary call in _get_missing_events_for_pduErik Johnston2017-04-281-13/+11
| | | | | | |
| * | | | | | Don't fetch state for missing events that we fetchedErik Johnston2017-04-281-0/+6
| | | | | | |
* | | | | | | Merge pull request #2178 from matrix-org/erikj/message_metricsErik Johnston2017-05-025-2/+29
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | Add more granular event send metrics
| * | | | | | Add more granular event send metricsErik Johnston2017-05-025-2/+29
| | |/ / / / | |/| | | |
* | | | | | Merge pull request #2180 from matrix-org/rav/fix_timeout_on_timeoutRichard van der Hoff2017-05-021-1/+1
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Instantiate DeferredTimedOutError correctly
| * | | | | Instantiate DeferredTimedOutError correctlyRichard van der Hoff2017-05-021-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | Call `super` correctly, so that we correctly initialise the `errcode` field. Fixes https://github.com/matrix-org/synapse/issues/2179.
* | | | | Merge pull request #2080 from matrix-org/erikj/filter_speedErik Johnston2017-04-284-40/+24
|\ \ \ \ \ | |/ / / / |/| | | | Speed up filtering of a single event in push
| * | | | Remove unused importErik Johnston2017-04-281-1/+0
| | | | |
| * | | | We don't care about forgotten roomsErik Johnston2017-04-281-12/+0
| | | | |
| * | | | Speed up filtering of a single event in pushErik Johnston2017-04-284-40/+37
| | | | |
* | | | | Merge pull request #2163 from matrix-org/erikj/fix_invite_stateErik Johnston2017-04-273-7/+26
|\ \ \ \ \ | | | | | | | | | | | | Fix invite state to always include all events
| * | | | | Comment and remove spurious loggingErik Johnston2017-04-272-1/+3
| | | | | |
| * | | | | Fix testsErik Johnston2017-04-261-3/+3
| | | | | |
| * | | | | Fix invite state to always include all eventsErik Johnston2017-04-263-7/+24
| |/ / / /
* | | | | Merge pull request #2127 from APwhitehat/alreadystartedErik Johnston2017-04-271-0/+3
|\ \ \ \ \ | | | | | | | | | | | | print something legible if synapse already running
| * | | | | synctl.py: Check if synapse is already runningAnant Prakash2017-04-131-0/+3
| | |/ / / | |/| | |
* | | | | Merge pull request #2131 from matthewjwolff/developErik Johnston2017-04-272-2/+8
|\ \ \ \ \ | | | | | | | | | | | | web_client_location documentation fix
| * | | | | Queried CONDITIONAL_REQUIREMENTSMatthew Wolff2017-04-181-2/+5
| | | | | |
| * | | | | Fixed travis build failureMatthew Wolff2017-04-171-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Matthew Wolff <matthewjwolff@gmail.com>
| * | | | | web_server_root documentation fixMatthew Wolff2017-04-172-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Matthew Wolff <matthewjwolff@gmail.com>
* | | | | | Fix bgupdate error if index already exists (#2167)Richard van der Hoff2017-04-271-30/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When creating a new table index in the background, guard against it existing already. Fixes https://github.com/matrix-org/synapse/issues/2135. Also, make sure we restore the autocommit flag when we're done, otherwise we get more failures from other operations later on. Fixes https://github.com/matrix-org/synapse/issues/1890 (hopefully).
* | | | | | Merge pull request #2168 from matrix-org/erikj/federation_loggingErik Johnston2017-04-271-2/+22
|\ \ \ \ \ \ | | | | | | | | | | | | | | Add some extra logging for edge cases of federation
| * | | | | | TypoErik Johnston2017-04-271-1/+1
| | | | | | |
| * | | | | | Add some extra logging for edge cases of federationErik Johnston2017-04-271-2/+22
| | |_|/ / / | |/| | | |
* | | | | | Merge pull request #2130 from APwhitehat/roomexistsErik Johnston2017-04-271-1/+5
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Check that requested room_id exists
| * | | | | Check that requested room_id existsAnant Prakash2017-04-141-1/+5
| | |/ / / | |/| | |
* | | | | Make state caches cache in asciiErik Johnston2017-04-251-2/+3
| |_|_|/ |/| | |
* | | | fix upErik Johnston2017-04-251-1/+2
| | | |
* | | | Don't specify default as dictErik Johnston2017-04-251-1/+1
| | | |
* | | | CommentErik Johnston2017-04-251-0/+2
| | | |
* | | | Reduce size of joined_user cacheErik Johnston2017-04-254-11/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The _get_joined_users_from_context cache stores a mapping from user_id to avatar_url and display_name. Instead of storing those in a dict, store them in a namedtuple as that uses much less memory. We also try converting the string to ascii to further reduce the size.
* | | | Reduce _get_state_group_for_event cache sizeErik Johnston2017-04-251-1/+1
| | | |
* | | | Merge pull request #2158 from matrix-org/erikj/reduce_cache_sizeErik Johnston2017-04-253-24/+28
|\ \ \ \ | | | | | | | | | | Reduce cache size by not storing deferreds
| * | | | Remove DEBUG_CACHESErik Johnston2017-04-251-2/+0
| | | | |
| * | | | Reduce cache size by not storing deferredsErik Johnston2017-04-252-22/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the cache descriptors store deferreds rather than raw values, this is a simple way of triggering only one database hit and sharing the result if two callers attempt to get the same value. However, there are a few caches that simply store a mapping from string to string (or int). These caches can have a large number of entries, under the assumption that each entry is small. However, the size of a deferred (specifically the size of ObservableDeferred) is signigicantly larger than that of the raw value, 2kb vs 32b. This PR therefore changes the cache descriptors to store the raw values rather than the deferreds. As a side effect cached storage function now either return a deferred or the actual value, as the cached list decriptor already does. This is fine as we always end up just yield'ing on the returned value eventually, which handles that case correctly.
* | | | | Fix code for reporting old verify keys in synapseMark Haines2017-04-241-3/+2
| | | | |
* | | | | Merge pull request #2145 from matrix-org/rav/reject_invite_to_unreachable_serverRichard van der Hoff2017-04-245-44/+124
|\ \ \ \ \ | |/ / / / |/| | | | Fix rejection of invites to unreachable servers
| * | | | Try harder when sending leave eventsRichard van der Hoff2017-04-211-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | When we're rejecting invites, ignore the backoff data, so that we have a better chance of not getting the room out of sync.
| * | | | Remove redundant try/except clausesRichard van der Hoff2017-04-211-23/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `except SynapseError` clauses were pointless because the wrapped functions would never throw a `SynapseError` (they either throw a `CodeMessageException` or a `RuntimeError`). The `except CodeMessageException` is now also pointless because the caller treats all exceptions equally, so we may as well just throw the `CodeMessageException`.
| * | | | Broaden the conditions for locally_rejecting invitesRichard van der Hoff2017-04-211-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic for marking invites as locally rejected was all well and good, but didn't happen when the remote server returned a 500, or wasn't reachable, or had no DNS, or whatever. Just expand the except clause to catch everything. Fixes https://github.com/matrix-org/synapse/issues/761.
| * | | | Remove redundant functionRichard van der Hoff2017-04-211-10/+5
| | | | | | | | | | | | | | | | | | | | | | | | | inline `reject_remote_invite`, which only existed to make tracing the callflow more difficult.
| * | | | Fix some lies, and other clarifications, in docstringsRichard van der Hoff2017-04-213-9/+82
| | |_|/ | |/| | | | | | | | | | | | | | The documentation on get_json has been wrong ever since the very first commit to synapse...
* | | | Merge pull request #2155 from matrix-org/erikj/string_internErik Johnston2017-04-241-18/+11
|\ \ \ \ | | | | | | | | | | Only intern ascii strings
| * | | | Only intern ascii stringsErik Johnston2017-04-241-18/+11
| |/ / /