summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Use get_cache_factor_for function for `state_cache`Erik Johnston2018-08-201-2/+2
| | | | | This allows the cache factor for `state_cache` to be individually specified in the enviroment
* Merge pull request #3713 from matrix-org/erikj/fixup_fed_loggingErik Johnston2018-08-201-1/+1
|\ | | | | Fix logging bug in EDU handling over replication
| * Fix logging bug in EDU handling over replicationErik Johnston2018-08-171-1/+1
| |
* | Merge pull request #3709 from matrix-org/rav/logcontext_for_replication_commandsRichard van der Hoff2018-08-178-20/+53
|\ \ | | | | | | Logcontexts for replication command handlers
| * | Logcontexts for replication command handlersRichard van der Hoff2018-08-178-20/+53
| |/ | | | | | | | | | | | | | | | | | | Run the handlers for replication commands as background processes. This should improve the visibility in our metrics, and reduce the number of "running db transaction from sentinel context" warnings. Ideally it means converting the things that fire off deferreds into the night into things that actually return a Deferred when they are done. I've made a bit of a stab at this, but it will probably be leaky.
* | Merge pull request #3710 from matrix-org/rav/logcontext_for_pusher_updatesRichard van der Hoff2018-08-175-21/+28
|\ \ | | | | | | Fix logcontexts for running pushers
| * | Fix logcontexts for running pushersRichard van der Hoff2018-08-175-21/+28
| |/ | | | | | | | | | | | | First of all, avoid resetting the logcontext before running the pushers, to fix the "Starting db txn 'get_all_updated_receipts' from sentinel context" warning. Instead, give them their own "background process" logcontexts.
* | Integrate presence from hotfixes (#3694)Amber Brown2018-08-189-17/+90
| |
* | Remove v1/register's broken shared secret functionality (#3703)Amber Brown2018-08-181-54/+0
| |
* | Merge pull request #3701 from matrix-org/rav/use_producer_for_responsesRichard van der Hoff2018-08-171-4/+13
|\ \ | | | | | | Use a producer to stream back responses
| * | Use a producer to stream back responsesRichard van der Hoff2018-08-151-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem with dumping all of the json response into the Request object at once is that doing so starts the timeout for the next request to be received: so if it takes longer than 60s to stream back the response to the client, the client never gets it. The correct solution is to use a Producer; then the timeout is only started once all of the content is sent over the TCP connection.
* | | Merge pull request #3700 from matrix-org/rav/wait_for_producersRichard van der Hoff2018-08-172-92/+179
|\ \ \ | | | | | | | | Refactor request logging code
| * | | Refactor request logging codeRichard van der Hoff2018-08-152-92/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit moves a bunch of the logic for deciding when to log the receipt and completion of HTTP requests into SynapseRequest, rather than in the request handling wrappers. Advantages of this are: * we get logs for *all* requests (including OPTIONS and HEADs), rather than just those that end up hitting handlers we've remembered to decorate correctly. * when a request handler wires up a Producer (as the media stuff does currently, and as other things will do soon), we log at the point that all of the traffic has been sent to the client.
* | | | Merge branch 'neilj/limit_exceeded_error' of github.com:matrix-org/synapse ↵Neil Johnson2018-08-176-3/+18
|\ \ \ \ | | | | | | | | | | | | | | | into neilj/limit_exceeded_error
| * \ \ \ Merge branch 'develop' into neilj/limit_exceeded_errorNeil Johnson2018-08-176-3/+18
| |\ \ \ \
| | * | | | remove errant yieldNeil Johnson2018-08-171-1/+1
| | | | | |
| | * | | | call reap on start up and fix under reaping bugNeil Johnson2018-08-163-2/+6
| | | | | |
| | * | | | block event creation and room creation on hitting resource limitsNeil Johnson2018-08-162-1/+9
| | | |_|/ | | |/| |
| | * | | Fix inbound federation on reader workerErik Johnston2018-08-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Inbound federation requires calculating push, which in turn relies on having access to account data.
* | | | | server limits config docsNeil Johnson2018-08-171-0/+26
|/ / / /
* / / / add new error type ResourceLimitNeil Johnson2018-08-163-6/+28
|/ / /
* | | Add GET media/v1/config (#3184)Will Hunt2018-08-162-1/+50
| | |
* | | lazyload aware /messages (#3589)Matthew Hodgson2018-08-162-2/+46
| | |
* | | initial cut at a room summary API (#3574)Matthew Hodgson2018-08-165-18/+158
| | |
* | | Merge pull request #3689 from matrix-org/neilj/fix_off_by_1+mausNeil Johnson2018-08-151-2/+2
|\ \ \ | | | | | | | | Fix Mau off by one errors
| * \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-1523-178/+591
| |\ \ \ | | | | | | | | | | | | | | | neilj/fix_off_by_1+maus
| * \ \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-142-2/+3
| |\ \ \ \ | | | | | | | | | | | | | | | | | | neilj/fix_off_by_1+maus
| * | | | | support admin_email config and pass through into blocking errors, return ↵Neil Johnson2018-08-141-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | AuthError in all cases
| * | | | | fix off by 1s on mauNeil Johnson2018-08-141-2/+2
| | | | | |
| * | | | | Merge branch 'neilj/admin_email' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-141-10/+0
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | neilj/fix_off_by_1+maus
| * \ \ \ \ \ Merge branch 'neilj/admin_email' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-144-17/+35
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | neilj/fix_off_by_1+maus
| * \ \ \ \ \ \ Merge branch 'neilj/mau_sync_block' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-143-8/+26
| |\ \ \ \ \ \ \ | | |_|_|_|_|/ / | |/| | | | | | | | | | | | | | neilj/fix_off_by_1+maus
* | | | | | | | speed up /members and add at= and membership params (#3568)Matthew Hodgson2018-08-154-18/+170
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | Merge pull request #3653 from matrix-org/erikj/split_federationErik Johnston2018-08-1514-138/+498
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | Move more federation APIs to workers
| * | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-08-1554-337/+368
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | erikj/split_federation
| * | | | | | | Use federation handler function rather than duplicateErik Johnston2018-08-152-48/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This involves renaming _persist_events to be a public function.
| * | | | | | | Rename slave TransactionStore to SlaveTransactionStoreErik Johnston2018-08-156-11/+11
| | | | | | | |
| * | | | | | | Move clean_room_for_join to masterErik Johnston2018-08-092-2/+49
| | | | | | | |
| * | | | | | | Fixup doc commentsErik Johnston2018-08-092-0/+28
| | | | | | | |
| * | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-08-0930-126/+667
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | erikj/split_federation
| * | | | | | | | Pull in necessary stores in federation_readerErik Johnston2018-08-062-1/+2
| | | | | | | | |
| * | | | | | | | Move necessary storage functions to worker classesErik Johnston2018-08-063-98/+100
| | | | | | | | |
| * | | | | | | | Import all functions from TransactionStoreErik Johnston2018-08-061-11/+2
| | | | | | | | |
| * | | | | | | | Add EDU/query handling over replicationErik Johnston2018-08-064-13/+62
| | | | | | | | |
| * | | | | | | | Add replication APIs for persisting federation eventsErik Johnston2018-08-064-10/+290
| | | | | | | | |
* | | | | | | | | Merge pull request #3687 from matrix-org/neilj/admin_emailNeil Johnson2018-08-154-22/+24
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | support admin_email config and pass through into blocking errors,
| * | | | | | | | clean up AuthErrorNeil Johnson2018-08-151-7/+3
| | | | | | | | |
| * | | | | | | | Merge branch 'neilj/update_limits_error_codes' of ↵Neil Johnson2018-08-151-2/+1
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | github.com:matrix-org/synapse into neilj/admin_email
| | * | | | | | | | update error codes for resource limitingNeil Johnson2018-08-151-2/+1
| | | | | | | | | |
| * | | | | | | | | update admin email to uriNeil Johnson2018-08-151-1/+1
| |/ / / / / / / /
| * | | | | | | | replace admin_email with admin_uri for greater flexibilityNeil Johnson2018-08-153-8/+8
| | | | | | | | |
| * | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into neilj/admin_emailNeil Johnson2018-08-143-25/+56
| |\ \ \ \ \ \ \ \ | | | |_|_|_|_|_|/ | | |/| | | | | |
| * | | | | | | | remove blank lineNeil Johnson2018-08-141-1/+0
| | |_|_|_|_|_|/ | |/| | | | | |
| * | | | | | | Update register.pyNeil Johnson2018-08-141-10/+0
| | |_|_|_|_|/ | |/| | | | | | | | | | | | remove comments
| * | | | | | support admin_email config and pass through into blocking errors, return ↵Neil Johnson2018-08-134-17/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | AuthError in all cases
* | | | | | | Merge pull request #3690 from matrix-org/neilj/change_prometheus_mau_metric_nameNeil Johnson2018-08-151-3/+3
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | combine mau metrics into one group
| * \ \ \ \ \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-143-9/+28
| |\ \ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | | | | | | | | neilj/change_prometheus_mau_metric_name
| * | | | | | | pep8Neil Johnson2018-08-141-0/+1
| | | | | | | |
| * | | | | | | combine mau metrics into one groupNeil Johnson2018-08-141-4/+3
| | |_|_|_|/ / | |/| | | | |
* | | | | | | Merge pull request #3667 from matrix-org/erikj/fixup_unbindErik Johnston2018-08-155-20/+78
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | Don't fail requests to unbind 3pids for non supporting ID servers
| * | | | | | Log when we 3pid/unbind request failsErik Johnston2018-08-091-0/+2
| | | | | | |
| * | | | | | Don't fail requests to unbind 3pids for non supporting ID serversErik Johnston2018-08-085-20/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Older identity servers may not support the unbind 3pid request, so we shouldn't fail the requests if we received one of 400/404/501. The request still fails if we receive e.g. 500 responses, allowing clients to retry requests on transient identity server errors that otherwise do support the API. Fixes #3661
* | | | | | | adding missing yieldNeil Johnson2018-08-141-1/+1
| | | | | | |
* | | | | | | Merge pull request #3670 from matrix-org/neilj/mau_sync_blockNeil Johnson2018-08-143-8/+27
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | Block ability to read via sync if mau limit exceeded
| * | | | | | make comments clearerNeil Johnson2018-08-141-1/+2
| | |_|_|_|/ | |/| | | |
| * | | | | rename _user_last_seen_monthly_activeNeil Johnson2018-08-092-6/+6
| | | | | |
| * | | | | fix errant parenthesisNeil Johnson2018-08-091-1/+1
| | | | | |
| * | | | | only block on sync where user is not part of the mau cohortNeil Johnson2018-08-092-3/+17
| | | | | |
| * | | | | block sync if auth checks failNeil Johnson2018-08-091-7/+5
| | | | | |
| * | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-093-0/+9
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | neilj/mau_sync_block
| * \ \ \ \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-0921-298/+667
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | neilj/mau_sync_block
| * | | | | | | sync auth blockingNeil Johnson2018-08-081-5/+11
| | | | | | | |
* | | | | | | | Merge remote-tracking branch 'origin/develop' into ↵Amber Brown2018-08-144-196/+11
|\ \ \ \ \ \ \ \ | | |_|_|_|/ / / | |/| | | | | | | | | | | | | | neilj/fix_reap_users_in_postgres
| * | | | | | | Merge pull request #3677 from andrewshadura/masterRichard van der Hoff2018-08-132-196/+1
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Use recaptcha_ajax.js directly from Google
| | * | | | | | | Use recaptcha_ajax.js directly from GoogleAndrej Shadura2018-08-102-196/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The script recaptcha_ajax.js contains minified non-free code which we probably cannot redistribute. Since it talks to Google servers anyway, it is better to just download it from Google directly instead of shipping it. This fixes #1932.
| * | | | | | | | Revert "support admin_email config and pass through into blocking errors, ↵Neil Johnson2018-08-134-35/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | return AuthError in all cases" This reverts commit 0d43f991a19840a224d3dac78d79f13d78212ee6.
| * | | | | | | | support admin_email config and pass through into blocking errors, return ↵Neil Johnson2018-08-134-17/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AuthError in all cases
| * | | | | | | | Run tests under PostgreSQL (#3423)Amber Brown2018-08-132-0/+10
| | | | | | | | |
* | | | | | | | | fix sqlite/postgres incompatibility in reap_monthly_active_usersNeil Johnson2018-08-111-16/+28
|/ / / / / / / /
* | | | | | | | Merge branch 'rav/fix_linearizer_cancellation' into developRichard van der Hoff2018-08-101-43/+68
|\ \ \ \ \ \ \ \
| * | | | | | | | Fix linearizer cancellation on twisted < 18.7Richard van der Hoff2018-08-101-43/+68
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turns out that cancellation of inlineDeferreds didn't really work properly until Twisted 18.7. This commit refactors Linearizer.queue to avoid inlineCallbacks.
* | | | | | | | log *after* reloading log configRichard van der Hoff2018-08-101-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... because logging *before* reloading means the log message gets lost in the old MemoryLogger
* | | | | | | | Rename async to async_helpers because `async` is a keyword on Python 3.7 (#3678)Amber Brown2018-08-1029-31/+31
| | | | | | | |
* | | | | | | | Merge pull request #3439 from vojeroen/send_sni_for_federation_requestsRichard van der Hoff2018-08-1013-16/+110
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | send SNI for federation requests
| * | | | | | | more generic conversion of str/bytes to unicodeJeroen2018-08-091-1/+1
| | | | | | | |
| * | | | | | | include private functions from twistedJeroen2018-08-091-2/+35
| | | | | | | |
| * | | | | | | updated docstring for ServerContextFactoryJeroen2018-08-081-1/+1
| | | | | | | |
| * | | | | | | fix isortJeroen2018-07-291-2/+3
| | | | | | | |
| * | | | | | | fix accidental removal of hsJeroen2018-07-271-1/+1
| | | | | | | |
| * | | | | | | Merge branch 'develop' into send_sni_for_federation_requestsRichard van der Hoff2018-07-2772-1162/+2278
| |\ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge remote-tracking branch 'upstream/develop' into ↵Jeroen2018-07-14259-1767/+1825
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | send_sni_for_federation_requests # Conflicts: # synapse/crypto/context_factory.py
| * \ \ \ \ \ \ \ \ Merge branch 'develop' into send_sni_for_federation_requestsJeroen2018-07-0968-191/+791
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # synapse/http/endpoint.py
| * | | | | | | | | | take idna implementation from twistedJeroen2018-06-261-2/+2
| | | | | | | | | | |
| * | | | | | | | | | allow self-signed certificatesJeroen2018-06-263-35/+36
| | | | | | | | | | |
| * | | | | | | | | | formatting changes for pep8Jeroen2018-06-254-5/+8
| | | | | | | | | | |
| * | | | | | | | | | send SNI for federation requestsJeroen2018-06-2414-13/+69
| | | | | | | | | | |
* | | | | | | | | | | Merge pull request #3655 from matrix-org/neilj/disable_hsNeil Johnson2018-08-093-0/+9
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / / / |/| | | | | | | | | | Flag to disable HS without disabling federation
| * | | | | | | | | | fix pep8 too many linesNeil Johnson2018-08-081-1/+0
| | | | | | | | | | |
| * | | | | | | | | | Merge branch 'develop' into neilj/disable_hsNeil Johnson2018-08-0812-22/+240
| |\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ Merge branch 'develop' into neilj/disable_hsNeil Johnson2018-08-083-6/+54
| |\ \ \ \ \ \ \ \ \ \ \ | | | |_|_|_|_|_|/ / / / | | |/| | | | | | | | |
| * | | | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into neilj/disable_hsNeil Johnson2018-08-084-37/+69
| |\ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ Merge branch 'neilj/mau_tracker' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-061-4/+15
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | neilj/disable_hs
| * \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'neilj/mau_tracker' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-061-4/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | neilj/disable_hs
| * \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'neilj/mau_tracker' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-062-8/+15
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | neilj/disable_hs
| * | | | | | | | | | | | | | | disable HS from configNeil Johnson2018-08-043-0/+9
| | | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | Merge branch 'master' into developAmber Brown2018-08-091-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | / | |_|_|_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | |
| * | | | | | | | | | | | | | 0.33.2Amber Brown2018-08-091-1/+1
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | fix for rc1 v0.33.2rc1Amber Brown2018-08-071-1/+1
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | versionAmber Brown2018-08-071-1/+1
| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge pull request #3632 from matrix-org/erikj/refactor_repl_servletErik Johnston2018-08-095-274/+395
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add helper base class for generating new replication endpoints
| * | | | | | | | | | | | | | | Fixup wording and remove dead codeErik Johnston2018-08-091-2/+1
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | Rename POST param to METHODErik Johnston2018-08-082-13/+22
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | Fixup logging and docstringsErik Johnston2018-08-082-2/+40
| | |_|_|_|_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | |
| * | | | | | | | | | | | | | Fix isortErik Johnston2018-08-061-4/+1
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-08-0340-601/+707
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | erikj/refactor_repl_servlet
| * | | | | | | | | | | | | | | Use new helper base class for membership requestsErik Johnston2018-07-312-195/+108
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | Use new helper base class for ReplicationSendEventRestServletErik Johnston2018-07-312-86/+40
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | Add helper base class for generating new replication endpointsErik Johnston2018-07-311-0/+208
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will hopefully reduce the boiler plate required to implement new internal HTTP requests.
* | | | | | | | | | | | | | | | Merge pull request #3664 from matrix-org/rav/federation_metricsRichard van der Hoff2018-08-083-1/+32
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|/ / / / / / |/| | | | | | | | | | | | | | | more metrics for the federation and appservice senders
| * | | | | | | | | | | | | | | fix metric nameRichard van der Hoff2018-08-071-1/+1
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | more metrics for the federation and appservice sendersRichard van der Hoff2018-08-073-1/+32
| | |_|/ / / / / / / / / / / / | |/| | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge pull request #3654 from matrix-org/rav/room_versionsRichard van der Hoff2018-08-0812-22/+239
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|/ / / / / / |/| | | | | | | | | | | | | | Support for room versioning
| * | | | | | | | | | | | | | Don't expose default_room_version as config optRichard van der Hoff2018-08-073-15/+5
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | Check m.room.create for sane room_versionsRichard van der Hoff2018-08-062-4/+32
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | include known room versions in outgoing make_joinsRichard van der Hoff2018-08-064-8/+25
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | sanity check response from make_joinRichard van der Hoff2018-08-031-1/+3
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | Enforce compatibility when processing make_join requestsRichard van der Hoff2018-08-033-4/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reject make_join requests from servers which do not support the room version. Also include the room version in the response.
| * | | | | | | | | | | | | | Basic support for room versioningRichard van der Hoff2018-08-036-5/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first tranche of support for room versioning. It includes: * setting the default room version in the config file * new room_version param on the createRoom API * storing the version of newly-created rooms in the m.room.create event * fishing the version of existing rooms out of the m.room.create event
| * | | | | | | | | | | | | | Docstrings for BaseFederationServletRichard van der Hoff2018-08-031-0/+47
| | |_|/ / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to save me reverse-engineering this stuff again.
* | | | | | | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-084-36/+68
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | neilj/reserved_users
| * | | | | | | | | | | | | Merge pull request #3633 from matrix-org/neilj/mau_trackerNeil Johnson2018-08-0810-53/+220
| |\ \ \ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | API for monthly_active_users table
| | * | | | | | | | | | | | typosNeil Johnson2018-08-082-3/+3
| | | |_|_|_|_|_|/ / / / / | | |/| | | | | | | | | |
| * | | | | | | | | | | | Fix occasional glitches in the synapse_event_persisted_position metricRichard van der Hoff2018-08-071-3/+8
| | |_|/ / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Every so often this metric glitched to a negative number. I'm assuming it was due to backfilled events.
| * | | | | | | | | | | Return M_NOT_FOUND when a profile could not be found. (#3596)Will Hunt2018-08-031-31/+58
| | |/ / / / / / / / / | |/| | | | | | | | |
* | | | | | | | | | | prevent total number of reserved users being too largeNeil Johnson2018-08-071-1/+3
| | | | | | | | | | |
* | | | | | | | | | | implement reserved users for mau limitsNeil Johnson2018-08-073-12/+41
| | | | | | | | | | |
* | | | | | | | | | | WIP building out mau reserved usersNeil Johnson2018-08-061-1/+15
| | | | | | | | | | |
* | | | | | | | | | | load mau limit threepidsNeil Johnson2018-08-061-0/+3
| |/ / / / / / / / / |/| | | | | | | | |
* | | | | | | | | | Fix postgres compatibility bugNeil Johnson2018-08-061-4/+15
| |_|_|_|/ / / / / |/| | | | | | | |
* | | | | | | | | update comments to reflect new sigNeil Johnson2018-08-061-4/+1
| |_|_|/ / / / / |/| | | | | | |
* | | | | | | | make use of _simple_select_one_onecol, improved commentsNeil Johnson2018-08-062-8/+15
| |_|/ / / / / |/| | | | | |
* | | | | | | py3 fixNeil Johnson2018-08-031-1/+1
| | | | | | |
* | | | | | | bug fixesNeil Johnson2018-08-033-19/+7
| | | | | | |
* | | | | | | wip commit - tests failingNeil Johnson2018-08-033-40/+53
| | | | | | |
* | | | | | | fix (lots of) py3 test failuresNeil Johnson2018-08-031-2/+2
| | | | | | |
* | | | | | | fix caching and testsNeil Johnson2018-08-032-49/+43
| | | | | | |
* | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into neilj/mau_trackerNeil Johnson2018-08-0318-376/+433
|\| | | | | |
| * | | | | | Merge pull request #3639 from matrix-org/rav/refactor_error_handlingRichard van der Hoff2018-08-028-142/+123
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Clean up handling of errors from outbound requests
| | * | | | | | Kill off MatrixCodeMessageExceptionRichard van der Hoff2018-08-015-78/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code brings the SimpleHttpClient into line with the MatrixFederationHttpClient by having it raise HttpResponseExceptions when a request fails (rather than trying to parse for matrix errors and maybe raising MatrixCodeMessageException). Then, whenever we were checking for MatrixCodeMessageException and turning them into SynapseErrors, we now need to check for HttpResponseExceptions and call to_synapse_error.
| | * | | | | | Refactor code for turning HttpResponseException into SynapseErrorRichard van der Hoff2018-08-013-34/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit replaces SynapseError.from_http_response_exception with HttpResponseException.to_synapse_error. The new method actually returns a ProxiedRequestError, which allows us to pass through additional metadata from the API call.
| | * | | | | | Be more careful which errors we send back over the C-S APIRichard van der Hoff2018-08-013-32/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We really shouldn't be sending all CodeMessageExceptions back over the C-S API; it will include things like 401s which we shouldn't proxy. That means that we need to explicitly turn a few HttpResponseExceptions into SynapseErrors in the federation layer. The effect of the latter is that the matrix errcode will get passed through correctly to calling clients, which might help with some of the random M_UNKNOWN errors when trying to join rooms.
| * | | | | | | Merge pull request #3638 from ↵Richard van der Hoff2018-08-021-129/+148
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | matrix-org/rav/refactor_federation_client_exception_handling Factor out exception handling in federation_client
| | * | | | | | Factor out exception handling in federation_clientRichard van der Hoff2018-08-011-129/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Factor out the error handling from make_membership_event, send_join, and send_leave, so that it can be shared.
| * | | | | | | Merge branch 'master' into developRichard van der Hoff2018-08-029-19/+65
| |\ \ \ \ \ \ \
| | * \ \ \ \ \ \ Merge tag 'v0.33.1'Richard van der Hoff2018-08-028-19/+63
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synapse 0.33.1 (2018-08-02) =========================== SECURITY FIXES -------------- - Fix a potential issue where servers could request events for rooms they have not joined. (`#3641 <https://github.com/matrix-org/synapse/issues/3641>`_) - Fix a potential issue where users could see events in private rooms before they joined. (`#3642 <https://github.com/matrix-org/synapse/issues/3642>`_)
| | | * | | | | | | Prepare 0.33.1Richard van der Hoff2018-08-021-1/+1
| | | | | | | | | |
| | | * | | | | | | Check room visibility for /event/ requestsRichard van der Hoff2018-08-023-6/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that the user has permission to view the requeseted event for /event/{eventId} and /room/{roomId}/event/{eventId} requests. Also check that the event is in the given room for /room/{roomId}/event/{eventId}, for sanity.
| | | * | | | | | | Avoid extra db lookupsRichard van der Hoff2018-08-023-62/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we're about to look up the events themselves anyway, we can skip the extra db queries here.
| | | * | | | | | | Validation for events/rooms in fed requestsRichard van der Hoff2018-08-023-1/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we get a federation request which refers to an event id, make sure that said event is in the room the caller claims it is in. (patch supplied by @turt2live)
| | * | | | | | | | Merge pull request #3377 from Valodim/note-affinityRichard van der Hoff2018-07-191-0/+2
| | |\ \ \ \ \ \ \ \ | | | |/ / / / / / / | | |/| | | | | | | document that the affinity package is required for the cpu_affinity setting
| | | * | | | | | | add note that the affinity package is required for the cpu_affinity settingVincent Breitmoser2018-06-091-0/+2
| | | | | | | | | |
| * | | | | | | | | Merge pull request #3621 from matrix-org/erikj/split_fed_storeErik Johnston2018-08-022-89/+100
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Split out DB writes in federation handler
| | * | | | | | | | | update docsErik Johnston2018-08-012-4/+6
| | | | | | | | | | |
| | * | | | | | | | | _persist_auth_tree no longer returns anythingErik Johnston2018-08-011-1/+1
| | | | | | | | | | |
| | * | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-07-3026-108/+446
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | erikj/split_fed_store
| | * | | | | | | | | | Split out DB writes in federation handlerErik Johnston2018-07-252-85/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow us to easily add an internal replication API to proxy these reqeusts to master, so that we can move federation APIs to workers.
* | | | | | | | | | | | update generate_monthly_active_users, and reap_monthly_active_usersNeil Johnson2018-08-021-2/+2
| | | | | | | | | | | |
* | | | | | | | | | | | typoNeil Johnson2018-08-021-1/+1
| | | | | | | | | | | |
* | | | | | | | | | | | wip attempt at cachingNeil Johnson2018-08-021-9/+47
| | | | | | | | | | | |
* | | | | | | | | | | | do mau checks based on monthly_active_users tableNeil Johnson2018-08-024-19/+29
| | | | | | | | | | | |
* | | | | | | | | | | | remove unused count_monthly_usersNeil Johnson2018-08-021-25/+0
| | | | | | | | | | | |
* | | | | | | | | | | | insertion into monthly_active_usersNeil Johnson2018-08-024-8/+36
| | | | | | | | | | | |
* | | | | | | | | | | | Merge branch 'neilj/mau_tracker' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-022-1/+3
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | neilj/mau_tracker
| * | | | | | | | | | | | self.db_conn unusedNeil Johnson2018-08-011-1/+0
| | | | | | | | | | | | |
| * | | | | | | | | | | | normalise reaping queryNeil Johnson2018-08-011-3/+38
| | | | | | | | | | | | |
* | | | | | | | | | | | | Revert "change monthly_active_users table to be a single column"Neil Johnson2018-08-022-4/+10
|/ / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ec716a35b219d147dee51733b55573952799a549.
* | | | | | | | | | | | change monthly_active_users table to be a single columnNeil Johnson2018-08-012-10/+4
| | | | | | | | | | | |
* | | | | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into neilj/mau_trackerNeil Johnson2018-08-0129-236/+282
|\| | | | | | | | | | |
| * | | | | | | | | | | Merge pull request #3630 from matrix-org/neilj/mau_sign_in_log_in_limitsNeil Johnson2018-08-017-4/+90
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | Initial impl of capping MAU
| | * | | | | | | | | | | count_monthly_users is now asyncNeil Johnson2018-08-011-1/+2
| | | | | | | | | | | | |
| | * | | | | | | | | | | improve clarityNeil Johnson2018-08-011-4/+5
| | | | | | | | | | | | |
| | * | | | | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Neil Johnson2018-08-0114-187/+98
| | |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | neilj/mau_sign_in_log_in_limits
| | * | | | | | | | | | | | count_monthly_users() asyncNeil Johnson2018-08-011-4/+7
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | remove need to plot limit_usage_by_mauNeil Johnson2018-08-012-7/+6
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | remove errant printNeil Johnson2018-08-011-1/+0
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | make count_monthly_users async synapse/handlers/auth.pyNeil Johnson2018-08-012-17/+18
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | only need to loop if mau limiting is enabledNeil Johnson2018-08-011-1/+2
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | coding styleNeil Johnson2018-07-315-6/+10
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | remove errant loggingNeil Johnson2018-07-301-1/+0
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | actually close connNeil Johnson2018-07-301-4/+8
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | factor out metrics from __init__ to app/homeserverNeil Johnson2018-07-302-25/+32
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | limit register and sign in on number of monthly usersNeil Johnson2018-07-305-2/+69
| | | |_|/ / / / / / / / / | | |/| | | | | | | | | |
| * | | | | | | | | | | | Merge pull request #3620 from fuzzmz/return-404-room-not-foundRichard van der Hoff2018-08-011-2/+2
| |\ \ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / / / / / | |/| | | | | | | | | | | return 404 if room not found
| | * | | | | | | | | | | return NotFoundError if room not foundSerban Constantin2018-07-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per the Client-Server API[0] we should return `M_NOT_FOUND` if the room isn't found instead of generic SynapseError. This ensures that /directory/list API returns 404 for room not found instead of 400. [0]: https://matrix.org/docs/spec/client_server/unstable.html#get-matrix-client-r0-directory-list-room-roomid Signed-off-by: Serban Constantin <serban.constantin@gmail.com>
| * | | | | | | | | | | | Python 3: Convert some unicode/bytes uses (#3569)Amber Brown2018-08-0214-48/+96
| | |_|/ / / / / / / / / | |/| | | | | | | | | |
| * | | | | | | | | | | Merge pull request #3634 from matrix-org/rav/wtf_is_a_replication_layerRichard van der Hoff2018-08-011-14/+14
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | rename replication_layer to federation_client
| | * | | | | | | | | | | rename replication_layer to federation_clientRichard van der Hoff2018-07-311-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have HAD ENOUGH of trying to remember wtf a replication layer is in terms of classes.
| * | | | | | | | | | | | Merge pull request #3384 from matrix-org/rav/rewrite_cachedlist_decoratorRichard van der Hoff2018-08-011-67/+64
| |\ \ \ \ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / / / / | |/| | | | | | | | | | | Rewrite cache list decorator
| | * | | | | | | | | | | fix invalidationRichard van der Hoff2018-07-271-1/+1
| | | | | | | | | | | | |
| | * | | | | | | | | | | Rewrite cache list decoratorRichard van der Hoff2018-07-271-67/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because it was complicated and annoyed me. I suspect this will be more efficient too.
| * | | | | | | | | | | | Merge pull request #3628 from turt2live/travis/goodby-pdu-failuresTravis Ralston2018-07-315-96/+7
| |\ \ \ \ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / / / / | |/| | | | | | | | | | | Remove pdu_failures from transactions
| | * | | | | | | | | | | Remove pdu_failures from transactionsTravis Ralston2018-07-305-96/+7
| | | |/ / / / / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | The field is never read from, and all the opportunities given to populate it are not utilized. It should be very safe to remove this.
| * | | | | | | | | | | Merge pull request #3612 from matrix-org/rav/store_heirarchyRichard van der Hoff2018-07-316-6/+10
| |\ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / / / / | |/| | | | | | | | | | Make EventStore inherit from EventFederationStore
| | * | | | | | | | | | reinstate explicit include of EventsWorkerStoreRichard van der Hoff2018-07-311-1/+3
| | | | | | | | | | | |
| | * | | | | | | | | | Make EventStore inherit from EventFederationStoreRichard van der Hoff2018-07-266-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (since it uses methods therein) Turns out that we had a bunch of things which were incorrectly importing EventWorkerStore from events.py rather than events_worker.py, which broke once I removed the import into events.py.
* | | | | | | | | | | | clean upNeil Johnson2018-08-011-15/+3
| | | | | | | | | | | |
* | | | | | | | | | | | fix commentNeil Johnson2018-08-011-1/+1
| | | | | | | | | | | |
* | | | | | | | | | | | api into monthly_active_users tableNeil Johnson2018-07-315-2/+118
|/ / / / / / / / / / /
* | / / / / / / / / / Only import secrets when availableKrombel2018-07-301-4/+3
| |/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | secrets got introduced in python 3.6 so this class is not available in 3.5 and before. This now checks for the current running version and only tries using secrets if the version is 3.6 or above Signed-Off-By: Matthias Kesler <krombel@krombel.de>
* | | | | | | | | | make /context lazyload & filter aware (#3567)Matthew Hodgson2018-07-274-7/+42
| |/ / / / / / / / |/| | | | | | | | | | | | | | | | | make /context lazyload & filter aware.
* | | | | | | | | Merge pull request #3391 from t3chguy/t3chguy/default_inviter_display_name_3pidRichard van der Hoff2018-07-271-0/+4
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|/ |/| | | | | | | | if inviter_display_name == ""||None then default to inviter MXID
| * | | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Michael Telatynski2018-07-24332-10409/+26535
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | t3chguy/default_inviter_display_name_3pid
| * | | | | | | | | if inviter_display_name == ""||None then default to inviter MXIDMichael Telatynski2018-06-131-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to prevent email invite from "None"
* | | | | | | | | | Merge pull request #3616 from matrix-org/travis/event_id_send_leaveRichard van der Hoff2018-07-261-2/+2
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Update the send_leave path to be an event_id
| * | | | | | | | | | Update the send_leave path to be an event_idTravis Ralston2018-07-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's still not used, however the parameter is an event ID not a transaction ID.
* | | | | | | | | | | Merge pull request #3614 from matrix-org/rav/stop_populating_event_contentRichard van der Hoff2018-07-263-2/+98
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Stop populating events.content
| * | | | | | | | | | | Create the column nullableRichard van der Hoff2018-07-262-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no real point in ever making the column non-nullable, and doing so breaks the sytests.
| * | | | | | | | | | | Stop populating events.contentRichard van der Hoff2018-07-262-1/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This field is no longer read from, so we should stop populating it. Once we're happy that this doesn't break everything, and a rollback is unlikely, we can think about dropping the column.
* | | | | | | | | | | | Deduplicate redundant lazy-loaded members (#3331)Matthew Hodgson2018-07-262-25/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * attempt at deduplicating lazy-loaded members as per the proposal; we can deduplicate redundant lazy-loaded members which are sent in the same sync sequence. we do this heuristically rather than requiring the client to somehow tell us which members it has chosen to cache, by instead caching the last N members sent to a client, and not sending them again. For now we hardcode N to 100. Each cache for a given (user,device) tuple is in turn cached for up to X minutes (to avoid the caches building up). For now we hardcode X to 30. * add include_redundant_members filter option & make it work * remove stale todo * add tests for _get_some_state_from_cache * incorporate review
* | | | | | | | | | | | Merge pull request #3613 from matrix-org/rav/stop_using_event_edges_room_idRichard van der Hoff2018-07-262-8/+6
|\ \ \ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / / / |/| | | | | | | | | | | Remove some redundant joins on event_edges.room_id
| * | | | | | | | | | | Remove some redundant joins on event_edges.room_idRichard van der Hoff2018-07-262-8/+6
| |/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We've long passed the point where it's possible to have the same event_id in different tables, so these join conditions are redundant: we can just join on event_id. event_edges is of non-trivial size, and the room_id column is wasteful, so let's stop reading from it. In future, we can stop writing to it, and then drop it.
* | | | | | | | | | | Merge pull request #3610 from matrix-org/rav/fix_looping_callsRichard van der Hoff2018-07-2612-15/+23
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | | Fix some looping_call calls which were broken in #3604
| * | | | | | | | | | Fix some looping_call calls which were broken in #3604Richard van der Hoff2018-07-2612-15/+23
| | |_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that looping_call does check the deferred returned by its callback, and (at least in the case of client_ips), we were relying on this, and I broke it in #3604. Update run_as_background_process to return the deferred, and make sure we return it to clock.looping_call.
* / | | | | | | | | comment on event_edgesRichard van der Hoff2018-07-261-1/+2
|/ / / / / / / / /
* | | | | | | | | Merge pull request #2970 from matrix-org/matthew/filter_membersMatthew Hodgson2018-07-263-62/+212
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Implement the lazy_load_members room state filter parameter
| * | | | | | | | | switch missing_types to be a boolMatthew Hodgson2018-07-251-4/+4
| | | | | | | | | |
| * | | | | | | | | Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-07-2523-231/+349
| |\ \ \ \ \ \ \ \ \ | | | |_|/ / / / / / | | |/| | | | | | |
| * | | | | | | | | incorporate more review.Matthew Hodgson2018-07-251-16/+14
| | | | | | | | | |
| * | | | | | | | | handle the edge case for _get_some_state_from_cache where types is []Matthew Hodgson2018-07-241-1/+7
| | | | | | | | | |
| * | | | | | | | | Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-07-241-12/+4
| |\ \ \ \ \ \ \ \ \
| * | | | | | | | | | clarify comment on p_idsMatthew Hodgson2018-07-241-1/+2
| | | | | | | | | | |
| * | | | | | | | | | consider non-filter_type types as wildcards, thus missing from the ↵Matthew Hodgson2018-07-241-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | state-group-cache
| * | | | | | | | | | rather than adding ll_ids, remove them from p_idsMatthew Hodgson2018-07-241-5/+6
| | | | | | | | | | |
| * | | | | | | | | | Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-07-2413-316/+409
| |\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | incorporate more reviewMatthew Hodgson2018-07-242-30/+18
| | | | | | | | | | | |
| * | | | | | | | | | | handle case where types is [] on postgres correctlyMatthew Hodgson2018-07-231-1/+1
| | | | | | | | | | | |
| * | | | | | | | | | | Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-07-2325-274/+646
| |\ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | incorporate reviewMatthew Hodgson2018-07-232-52/+35
| | | | | | | | | | | | |
| * | | | | | | | | | | | fix thinkos; unbreak testsMatthew Hodgson2018-07-191-2/+2
| | | | | | | | | | | | |
| * | | | | | | | | | | | incorporate reviewMatthew Hodgson2018-07-192-20/+31
| | | | | | | | | | | | |
| * | | | | | | | | | | | add a filtered_types param to limit filtering to specific typesMatthew Hodgson2018-07-192-82/+96
| | | | | | | | | | | | |
| * | | | | | | | | | | | merge develop pydoc for _get_state_for_groupsMatthew Hodgson2018-07-19271-2455/+3532
| |\ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-06-1020-124/+176
| |\ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'develop' into matthew/filter_membersMatthew Hodgson2018-06-0454-166/+398
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | more commentsMatthew Hodgson2018-06-041-0/+7
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | add lazy_load_members to the filter json schemaMatthew Hodgson2018-05-291-1/+4
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | pep8Matthew Hodgson2018-05-291-0/+1
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | disable CPUMetrics if no /proc/self/statMatthew Hodgson2018-05-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixes build on macOS again
| * | | | | | | | | | | | | | | add pydocMatthew Hodgson2018-05-292-27/+67
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | merge developMatthew Hodgson2018-05-29186-2989/+5608
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \