summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2229 from matrix-org/erikj/faster_get_joinedErik Johnston2017-05-171-3/+24
|\ | | | | Make get_joined_users faster when we have delta state
| * CommentErik Johnston2017-05-171-0/+5
| |
| * Short circuit when we have delta idsErik Johnston2017-05-171-3/+19
|/
* 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
| |/
* | Merge pull request #2226 from matrix-org/erikj/domain_from_idErik Johnston2017-05-161-3/+3
|\ \ | |/ |/| Speed up get_domain_from_id
| * 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-156-1/+38
| |\
| * | 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.
* | Merge pull request #2223 from matrix-org/erikj/ignore_not_retryingErik Johnston2017-05-151-1/+3
|\ \ | | | | | | Don't log exceptions for NotRetryingDestination
| * | Don't log exceptions for NotRetryingDestinationErik Johnston2017-05-151-1/+3
| |/
* | Merge pull request #2215 from hamber-dick/developErik Johnston2017-05-151-0/+9
|\ \ | |/ |/| Documantation to chek synapse version
| * Merge pull request #1 from hamber-dick/dev-branch-hamber-dickhamber-dick2017-05-101-0/+9
| |\ | | | | | | Documantation to chek synapse version
| | * Documantation to chek synapse versionhamber-dick2017-05-101-0/+9
| |/ | | | | | | | | | | I've added some Documentation, how to get the running Version of a Synapse homeserver. This should help the HS-Owners to check whether the Upgrade was successful.
* | 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
| | |
* | | Merge pull request #2213 from matrix-org/luke/username-availability-qpLuke Barnard2017-05-112-5/+11
|\ \ \ | |/ / |/| | Modify register/available to be GET with query param
| * | 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-104-36/+239
|\ \ | | | | | | 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-093-0/+54
| | | | | | | | | | | | | | | 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-093-33/+182
| |/ | | | | | | | | | | | | 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.
* | Merge pull request #2209 from matrix-org/luke/username-availability-postLuke Barnard2017-05-101-1/+1
|\ \ | |/ |/| Change register/available to POST (from GET)
| * 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-082-1/+63
|\
| * Bump version and changelog v0.21.0-rc2Erik Johnston2017-05-082-1/+14
| |
| * Bump version and changelog v0.21.0-rc1Erik Johnston2017-05-082-1/+50
| |
* | 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
| |/ /
* | | Merge pull request #2202 from matrix-org/erikj/cache_count_deviceErik Johnston2017-05-081-0/+9
|\ \ \ | |/ / |/| | Cache one time key counts
| * | 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
| | |/ | |/|
* | | Merge pull request #2186 from matrix-org/revert-2175-erikj/prefill_stateErik Johnston2017-05-043-27/+9
|\ \ \ | | | | | | | | Revert "Prefill state caches"
| * | | 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-2619-122/+309
| |\ \ \ | | | | | | | | | | | | | | | 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-217-2/+168
| |\ \ \ \ | | | | | | | | | | | | | | | | | | 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-038-6/+35
| |\ \ \ \ \ \
| * | | | | | | 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-027-5/+32
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | Add more granular event send metrics
| * | | | | | Add more granular event send metricsErik Johnston2017-05-027-5/+32
| | |/ / / / | |/| | | |
* | | | | | 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-273-4/+13
|\ \ \ \ \ | | | | | | | | | | | | 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-173-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | 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
| | |/ / / | |/| | |
* | | | | Merge pull request #2160 from matrix-org/erikj/reduce_join_cache_sizeErik Johnston2017-04-261-2/+3
|\ \ \ \ \ | |_|_|_|/ |/| | | | Make state caches cache in ascii
| * | | | Make state caches cache in asciiErik Johnston2017-04-251-2/+3
| | | | |
* | | | | document how to make IPv6 work (#2088)Matthew Hodgson2017-04-251-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * document how to make IPv6 work * spell out that pip will install 17.1 by default
* | | | | Merge pull request #2159 from matrix-org/erikj/reduce_join_cache_sizeErik Johnston2017-04-254-10/+42
|\| | | | | | | | | | | | | | Reduce size of joined_user cache
| * | | | 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.
* | | | | Merge pull request #2149 from enckse/developErik Johnston2017-04-251-3/+2
|\ \ \ \ \ | |/ / / / |/| | | | setting up metrics, just adding/clarifying 2 very minor items
| * | | | clarify metric setup to use 'scrape_configs' section of yaml and use an ↵Sean Enck2017-04-211-3/+2
| | | | | | | | | | | | | | | | | | | | array for target
* | | | | 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.
* | | | | | Merge pull request #2156 from matrix-org/markjh/old_verify_keysMark Haines2017-04-251-3/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix code for reporting old verify keys in synapse
| * | | | | | 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-246-54/+130
|\ \ \ \ \ \ | |/ / / / / |/| | | | | 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-214-19/+88
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | 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
| | |/ / / | |/| | |
* | | | | Merge pull request #2154 from matrix-org/erikj/remove_unused_cacheErik Johnston2017-04-242-9/+1
|\ \ \ \ \ | |/ / / / |/| | | | Remove unused cache
| * | | | Remove unused cacheErik Johnston2017-04-242-9/+1
|/ / / /
* / / / Document some of the admin APIs (#2143)Richard van der Hoff2017-04-211-0/+73
|/ / / | | | | | | | | | | | | | | | I haven't (yet) documented all of the user-list APIs introduced in https://github.com/matrix-org/synapse/pull/1784 because the API shape seems very odd, given the functionality.
* | | m.read_marker -> m.fully_read (#2128)Luke Barnard2017-04-183-9/+9
| | | | | | | | | | | | | | | | | | Also: - change the REST endpoint to have a "S" on the end (so it's now /read_markers) - change the content of the m.read_up_to event to have the key "event_id" instead of "marker".
* | | Merge pull request #2132 from feld/patch-1Matthew Hodgson2017-04-171-1/+1
|\ \ \ | |_|/ |/| | Update README.rst
| * | Update README.rstMark Felder2017-04-171-1/+1
| | | | | | | | | The FreeBSD port has been moved to the net-im category
* | | Merge pull request #2120 from matrix-org/luke/read-markersLuke Barnard2017-04-136-1/+167
|\ \ \ | |_|/ |/| | Implement Read Marker API
| * | Correct logic in is_event_afterLuke Barnard2017-04-131-1/+1
| | |
| * | Simplify is_event_after logicLuke Barnard2017-04-122-12/+6
| | |
| * | More null-guard changesLuke Barnard2017-04-121-4/+4
| | |
| * | Remove Unused ref to hsLuke Barnard2017-04-121-1/+0
| | |
| * | Move a spaceLuke Barnard2017-04-121-2/+2
| | |
| * | Only notify user, not entire roomLuke Barnard2017-04-121-3/+1
| | |
| * | Remove comment, simplify null-guardLuke Barnard2017-04-121-4/+1
| | |
| * | Handle no previous RMLuke Barnard2017-04-121-1/+4
| | |
| * | travis flake8..Luke Barnard2017-04-111-0/+1
| | |
| * | flake8Luke Barnard2017-04-111-1/+0
| | |
| * | Refactor event ordering check to events storeLuke Barnard2017-04-112-28/+32
| | |
| * | CopyrightLuke Barnard2017-04-111-1/+1
| | |
| * | flake8Luke Barnard2017-04-113-5/+4
| | |
| * | Finish implementing RM endpointLuke Barnard2017-04-115-48/+67
| | | | | | | | | | | | | | | - This change causes a 405 to be sent if "m.read_marker" is set via /account_data - This also fixes-up the RM endpoint so that it actually Works.
| * | Initial commit of RM server-side impllukebarnard2017-04-112-0/+153
| | | | | | | | | | | | (See https://docs.google.com/document/d/1UWqdS-e1sdwkLDUY0wA4gZyIkRp-ekjsLZ8k6g_Zvso/edit#heading=h.lndohpg8at5u)
* | | Merge pull request #2115 from matrix-org/erikj/dedupe_federation_replErik Johnston2017-04-127-130/+203
|\ \ \ | | | | | | | | Reduce federation replication traffic
| * | | CommentErik Johnston2017-04-121-2/+1
| | | |
| * | | Reuse get_interested_partiesErik Johnston2017-04-122-19/+8
| | | |
| * | | Move get_presence_list_* to SlaveStoreErik Johnston2017-04-113-24/+13
| | | |
| * | | CommentErik Johnston2017-04-112-1/+9
| | | |
| * | | Move get_interested_partiesErik Johnston2017-04-112-38/+36
| | | |
| * | | CommentsErik Johnston2017-04-112-9/+10
| | | |
| * | | Move get_interested_remotes back to presence handlerErik Johnston2017-04-112-38/+55
| | | |
| * | | CommentsErik Johnston2017-04-111-1/+14
| | | |
| * | | Reduce federation presence replication trafficErik Johnston2017-04-106-80/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mainly done by moving the calculation of where to send presence updates from the presence handler to the transaction queue, so we only need to send the presence event (and not the destinations) across the replication connection. Before we were duplicating by sending the full state across once per destination.
* | | | Merge pull request #2121 from matrix-org/paul/sent-transactions-metricPaul Evans2017-04-121-0/+3
|\ \ \ \ | | | | | | | | | | Add a counter metric for successfully-sent transactions
| * | | | Add a counter metric for successfully-sent transactionsPaul "LeoNerd" Evans2017-04-111-0/+3
| | | | |
* | | | | Merge pull request #2116 from matrix-org/erikj/dedupe_federation_repl2Erik Johnston2017-04-121-6/+24
|\ \ \ \ \ | | | | | | | | | | | | Dedupe KeyedEdu and Devices federation repl traffic
| * | | | | Add some commentsErik Johnston2017-04-121-0/+15
| | | | | |
| * | | | | Use generatorsErik Johnston2017-04-101-2/+2
| | | | | |
| * | | | | Dedupe KeyedEdu and Devices federation repl trafficErik Johnston2017-04-101-6/+9
| | |/ / / | |/| | |
* | | | | Merge pull request #2117 from matrix-org/erikj/remove_http_replicationErik Johnston2017-04-128-990/+11
|\ \ \ \ \ | | | | | | | | | | | | Remove HTTP replication APIs
| * | | | | Remove last reference to worker_replication_urlErik Johnston2017-04-121-1/+2
| | | | | |
| * | | | | Update replication docsErik Johnston2017-04-111-22/+4
| | | | | |
| * | | | | Update workers docsErik Johnston2017-04-111-10/+5
| | | | | |
| * | | | | Remove test of replication resourceErik Johnston2017-04-111-204/+0
| | | | | |
| * | | | | Remove HTTP replication APIsErik Johnston2017-04-115-753/+0
| |/ / / /
* | | | | Merge pull request #2118 from matrix-org/erikj/no_devicesErik Johnston2017-04-121-0/+3
|\ \ \ \ \ | |_|/ / / |/| | | | Fix getting latest device IP for user with no devices
| * | | | Bail on where clause insteadErik Johnston2017-04-111-3/+4
| | | | |
| * | | | Don't bother with outer check for nowErik Johnston2017-04-111-3/+0
| | | | |
| * | | | Fix getting latest device IP for user with no devicesErik Johnston2017-04-111-0/+5
| | |/ / | |/| |
* | | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-04-113-5/+14
|\ \ \ \ | |/ / / |/| | / | | |/ | |/|
| * | Merge branch 'release-v0.20.0' of github.com:matrix-org/synapse v0.20.0Erik Johnston2017-04-11100-1348/+3717
| |\ \
| | * | Bump changelog github/release-v0.20.0 release-v0.20.0Erik Johnston2017-04-111-1/+1
| | | |
| | * | Merge pull request #2110 from matrix-org/rav/fix_reject_persistenceRichard van der Hoff2017-04-071-4/+4
| | |\ \ | | | | | | | | | | When we do an invite rejection, save the signed leave event to the db
| | | * | When we do an invite rejection, save the signed leave event to the dbRichard van der Hoff2017-04-071-4/+4
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During a rejection of an invite received over federation, we ask a remote server to make us a `leave` event, then sign it, then send that with `send_leave`. We were saving the *unsigned* version of the event (which has a different event id to the signed version) to our db (and sending it to the clients), whereas other servers in the room will have seen the *signed* version. We're not aware of any actual problems that caused, except that it makes the database confusing to look at and generally leaves the room in a weird state.
| | * | Bump version and changelogErik Johnston2017-04-072-1/+10
| | | |
* | | | trust a hypothetical future riot.im ISMatthew Hodgson2017-04-101-0/+1
| |_|/ |/| |
* | | TypoErik Johnston2017-04-101-1/+1
| | |
* | | Merge pull request #2102 from DanielDent/add-auth-emailDavid Baker2017-04-102-1/+21
|\ \ \ | | | | | | | | Support authenticated SMTP
| * | | Support authenticated SMTPDaniel Dent2017-04-052-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | Closes (SYN-714) #1385 Signed-off-by: Daniel Dent <matrixcontrib@contactdaniel.net>
* | | | Merge pull request #2109 from matrix-org/erikj/send_queue_fixErik Johnston2017-04-103-92/+245
|\ \ \ \ | | | | | | | | | | Fix up federation SendQueue and document types
| * | | | Rename variableErik Johnston2017-04-101-7/+7
| | | | |
| * | | | Revert to sending the same data type as beforeErik Johnston2017-04-101-2/+2
| | | | |
| * | | | Change nameErik Johnston2017-04-101-2/+2
| | | | |
| * | | | CommentsErik Johnston2017-04-102-6/+8
| | | | |
| * | | | CommentErik Johnston2017-04-071-2/+15
| | | | |
| * | | | Add loggingErik Johnston2017-04-071-0/+8
| | | | |
| * | | | Fix up federation SendQueue and document typesErik Johnston2017-04-072-91/+221
| | | | |
* | | | | Up replication ping timeoutErik Johnston2017-04-101-2/+4
| | | | |
* | | | | Merge pull request #2108 from matrix-org/erikj/current_state_idsErik Johnston2017-04-071-10/+26
|\ \ \ \ \ | |/ / / / |/| | | | Speed up get_current_state_ids
| * | | | CommentErik Johnston2017-04-071-0/+9
| | | | |
| * | | | Speed up get_current_state_idsErik Johnston2017-04-071-10/+17
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using _simple_select_list is fairly expensive for functions that return a lot of rows and/or get called a lot. (This is because it carefully constructs a list of dicts). get_current_state_ids gets called a lot on startup and e.g. when the IRC bridge decided to send tonnes of joins/leaves (as it invalidates the cache). We therefore replace it with a custon txn function that builds up the final result dict without building up and intermediate representation.
* | | | Merge pull request #2107 from HarHarLinks/patch-1Erik Johnston2017-04-071-1/+1
|\ \ \ \ | | | | | | | | | | fix typo in synctl help
| * | | | fix typo in synctl helpKim Brose2017-04-061-1/+1
| | |/ / | |/| |
* | | | Merge pull request #2103 from matrix-org/erikj/no-double-encodeErik Johnston2017-04-075-47/+88
|\ \ \ \ | | | | | | | | | | Don't double encode replication data
| * | | | Document types of the replication streamsErik Johnston2017-04-061-28/+76
| | | | |
| * | | | Don't double json encode typing replication dataErik Johnston2017-04-052-6/+2
| | | | |
| * | | | Don't double json encode federation replication dataErik Johnston2017-04-052-13/+10
| | | | |
* | | | | Use iteritemsErik Johnston2017-04-061-2/+2
| | | | |
* | | | | Merge pull request #2106 from matrix-org/erikj/reduce_user_syncErik Johnston2017-04-061-4/+43
|\ \ \ \ \ | | | | | | | | | | | | Reduce rate of USER_SYNC repl commands
| * | | | | CommentErik Johnston2017-04-061-1/+1
| | | | | |
| * | | | | DocsErik Johnston2017-04-061-0/+7
| | | | | |
| * | | | | Don't immediately notify the master about users whose syncs have gone awayErik Johnston2017-04-051-4/+36
| |/ / / /
* | | | | Fix incorrect type when using InvalidateCacheCommandErik Johnston2017-04-061-1/+1
| | | | |
* | | | | Add log linesErik Johnston2017-04-051-1/+2
| | | | |
* | | | | Merge pull request #2104 from matrix-org/erikj/metrics_tcpErik Johnston2017-04-051-7/+38
|\ \ \ \ \ | |/ / / / |/| | | | Rearrange TCP replication metrics
| * | | | Rearrange metricsErik Johnston2017-04-052-19/+31
| | | | |