From 9a2f960736a1d1aeb6c9c094887253b280a59a37 Mon Sep 17 00:00:00 2001 From: Amber Brown Date: Tue, 21 Aug 2018 00:00:19 +1000 Subject: [PATCH 1/6] version --- synapse/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/synapse/__init__.py b/synapse/__init__.py index a14d578e3..5175a1161 100644 --- a/synapse/__init__.py +++ b/synapse/__init__.py @@ -17,4 +17,4 @@ """ This is a reference implementation of a Matrix home server. """ -__version__ = "0.33.2" +__version__ = "0.33.3rc1" From 80bf7d35802003cee6e495421ec54c1c08bce525 Mon Sep 17 00:00:00 2001 From: Amber Brown Date: Tue, 21 Aug 2018 00:01:14 +1000 Subject: [PATCH 2/6] changelog --- CHANGES.md | 64 ++++++++++++++++++++++++++++++++++++++++ changelog.d/1491.feature | 1 - changelog.d/3184.feature | 1 - changelog.d/3423.misc | 1 - changelog.d/3568.feature | 1 - changelog.d/3574.feature | 1 - changelog.d/3589.feature | 1 - changelog.d/3632.misc | 1 - changelog.d/3633.feature | 1 - changelog.d/3647.misc | 1 - changelog.d/3653.feature | 1 - changelog.d/3654.feature | 1 - changelog.d/3655.feature | 1 - changelog.d/3658.bugfix | 1 - changelog.d/3660.misc | 1 - changelog.d/3661.bugfix | 1 - changelog.d/3662.feature | 1 - changelog.d/3664.feature | 1 - changelog.d/3668.misc | 1 - changelog.d/3669.misc | 1 - changelog.d/3670.feature | 1 - changelog.d/3676.bugfix | 1 - changelog.d/3677.bugfix | 1 - changelog.d/3678.misc | 1 - changelog.d/3679.misc | 1 - changelog.d/3681.bugfix | 1 - changelog.d/3684.misc | 1 - changelog.d/3687.feature | 1 - changelog.d/3689.bugfix | 1 - changelog.d/3690.misc | 1 - changelog.d/3692.bugfix | 1 - changelog.d/3694.feature | 1 - changelog.d/3700.bugfix | 1 - changelog.d/3701.bugfix | 1 - changelog.d/3703.removal | 1 - changelog.d/3705.bugfix | 1 - changelog.d/3707.misc | 1 - changelog.d/3708.feature | 1 - changelog.d/3709.misc | 1 - changelog.d/3710.bugfix | 1 - changelog.d/3712.misc | 1 - changelog.d/3713.bugfix | 1 - changelog.d/3719.bugfix | 1 - 43 files changed, 64 insertions(+), 42 deletions(-) delete mode 100644 changelog.d/1491.feature delete mode 100644 changelog.d/3184.feature delete mode 100644 changelog.d/3423.misc delete mode 100644 changelog.d/3568.feature delete mode 100644 changelog.d/3574.feature delete mode 100644 changelog.d/3589.feature delete mode 100644 changelog.d/3632.misc delete mode 100644 changelog.d/3633.feature delete mode 100644 changelog.d/3647.misc delete mode 100644 changelog.d/3653.feature delete mode 100644 changelog.d/3654.feature delete mode 100644 changelog.d/3655.feature delete mode 100644 changelog.d/3658.bugfix delete mode 100644 changelog.d/3660.misc delete mode 100644 changelog.d/3661.bugfix delete mode 100644 changelog.d/3662.feature delete mode 100644 changelog.d/3664.feature delete mode 100644 changelog.d/3668.misc delete mode 100644 changelog.d/3669.misc delete mode 100644 changelog.d/3670.feature delete mode 100644 changelog.d/3676.bugfix delete mode 100644 changelog.d/3677.bugfix delete mode 100644 changelog.d/3678.misc delete mode 100644 changelog.d/3679.misc delete mode 100644 changelog.d/3681.bugfix delete mode 100644 changelog.d/3684.misc delete mode 100644 changelog.d/3687.feature delete mode 100644 changelog.d/3689.bugfix delete mode 100644 changelog.d/3690.misc delete mode 100644 changelog.d/3692.bugfix delete mode 100644 changelog.d/3694.feature delete mode 100644 changelog.d/3700.bugfix delete mode 100644 changelog.d/3701.bugfix delete mode 100644 changelog.d/3703.removal delete mode 100644 changelog.d/3705.bugfix delete mode 100644 changelog.d/3707.misc delete mode 100644 changelog.d/3708.feature delete mode 100644 changelog.d/3709.misc delete mode 100644 changelog.d/3710.bugfix delete mode 100644 changelog.d/3712.misc delete mode 100644 changelog.d/3713.bugfix delete mode 100644 changelog.d/3719.bugfix diff --git a/CHANGES.md b/CHANGES.md index a299110a6..68ce5d147 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,67 @@ +Synapse 0.33.3rc1 (2018-08-21) +============================== + +Features +-------- + +- Add support for the SNI extension to federation TLS connections ([\#1491](https://github.com/matrix-org/synapse/issues/1491)) +- Add /_media/r0/config ([\#3184](https://github.com/matrix-org/synapse/issues/3184)) +- speed up /members API and add `at` and `membership` params as per MSC1227 ([\#3568](https://github.com/matrix-org/synapse/issues/3568)) +- implement `summary` block in /sync response as per MSC688 ([\#3574](https://github.com/matrix-org/synapse/issues/3574)) +- Add lazy-loading support to /messages as per MSC1227 ([\#3589](https://github.com/matrix-org/synapse/issues/3589)) +- Add ability to limit number of monthly active users on the server ([\#3633](https://github.com/matrix-org/synapse/issues/3633)) +- Support more federation endpoints on workers ([\#3653](https://github.com/matrix-org/synapse/issues/3653)) +- Basic support for room versioning ([\#3654](https://github.com/matrix-org/synapse/issues/3654)) +- Ability to disable client/server Synapse via conf toggle ([\#3655](https://github.com/matrix-org/synapse/issues/3655)) +- Ability to whitelist specific threepids against monthly active user limiting ([\#3662](https://github.com/matrix-org/synapse/issues/3662)) +- Add some metrics for the appservice and federation event sending loops ([\#3664](https://github.com/matrix-org/synapse/issues/3664)) +- Where server is disabled, block ability for locked out users to read new messages ([\#3670](https://github.com/matrix-org/synapse/issues/3670)) +- set admin uri via config, to be used in error messages where the user should contact the administrator ([\#3687](https://github.com/matrix-org/synapse/issues/3687)) +- Synapse's presence functionality can now be disabled with the "use_presence" configuration option. ([\#3694](https://github.com/matrix-org/synapse/issues/3694)) +- For resource limit blocked users, prevent writing into rooms ([\#3708](https://github.com/matrix-org/synapse/issues/3708)) + + +Bugfixes +-------- + +- Fix occasional glitches in the synapse_event_persisted_position metric ([\#3658](https://github.com/matrix-org/synapse/issues/3658)) +- Fix bug on deleting 3pid when using identity servers that don't support unbind API ([\#3661](https://github.com/matrix-org/synapse/issues/3661)) +- Make the tests pass on Twisted < 18.7.0 ([\#3676](https://github.com/matrix-org/synapse/issues/3676)) +- Don’t ship recaptcha_ajax.js, use it directly from Google ([\#3677](https://github.com/matrix-org/synapse/issues/3677)) +- Fixes test_reap_monthly_active_users so it passes under postgres ([\#3681](https://github.com/matrix-org/synapse/issues/3681)) +- Fix mau blocking calulation bug on login ([\#3689](https://github.com/matrix-org/synapse/issues/3689)) +- Fix missing yield in synapse.storage.monthly_active_users.initialise_reserved_users ([\#3692](https://github.com/matrix-org/synapse/issues/3692)) +- Improve HTTP request logging to include all requests ([\#3700](https://github.com/matrix-org/synapse/issues/3700)) +- Avoid timing out requests while we are streaming back the response ([\#3701](https://github.com/matrix-org/synapse/issues/3701)) +- Support more federation endpoints on workers ([\#3705](https://github.com/matrix-org/synapse/issues/3705), [\#3713](https://github.com/matrix-org/synapse/issues/3713)) +- Fix "Starting db txn 'get_all_updated_receipts' from sentinel context" warning ([\#3710](https://github.com/matrix-org/synapse/issues/3710)) +- Fix bug where `state_cache` cache factor ignored environment variables ([\#3719](https://github.com/matrix-org/synapse/issues/3719)) + + +Deprecations and Removals +------------------------- + +- The Shared-Secret registration method of the legacy v1/register REST endpoint has been removed. For a replacement, please see [the admin/register API documentation](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/register_api.rst). ([\#3703](https://github.com/matrix-org/synapse/issues/3703)) + + +Internal Changes +---------------- + +- The test suite now can run under PostgreSQL. ([\#3423](https://github.com/matrix-org/synapse/issues/3423)) +- Refactor HTTP replication endpoints to reduce code duplication ([\#3632](https://github.com/matrix-org/synapse/issues/3632)) +- Tests now correctly execute on Python 3. ([\#3647](https://github.com/matrix-org/synapse/issues/3647)) +- Sytests can now be run inside a Docker container. ([\#3660](https://github.com/matrix-org/synapse/issues/3660)) +- Port over enough to Python 3 to allow the sytests to start. ([\#3668](https://github.com/matrix-org/synapse/issues/3668)) +- Update docker base image from alpine 3.7 to 3.8. ([\#3669](https://github.com/matrix-org/synapse/issues/3669)) +- Rename synapse.util.async to synapse.util.async_helpers to mitigate async becoming a keyword on Python 3.7. ([\#3678](https://github.com/matrix-org/synapse/issues/3678)) +- Synapse's tests are now formatted with the black autoformatter. ([\#3679](https://github.com/matrix-org/synapse/issues/3679)) +- Implemented a new testing base class to reduce test boilerplate. ([\#3684](https://github.com/matrix-org/synapse/issues/3684)) +- Rename MAU prometheus metrics ([\#3690](https://github.com/matrix-org/synapse/issues/3690)) +- add new error type ResourceLimit ([\#3707](https://github.com/matrix-org/synapse/issues/3707)) +- Logcontexts for replication command handlers ([\#3709](https://github.com/matrix-org/synapse/issues/3709)) +- Update admin register API documentation to reference a real user ID. ([\#3712](https://github.com/matrix-org/synapse/issues/3712)) + + Synapse 0.33.2 (2018-08-09) =========================== diff --git a/changelog.d/1491.feature b/changelog.d/1491.feature deleted file mode 100644 index 77b6d6ca0..000000000 --- a/changelog.d/1491.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for the SNI extension to federation TLS connections \ No newline at end of file diff --git a/changelog.d/3184.feature b/changelog.d/3184.feature deleted file mode 100644 index 9f746a57a..000000000 --- a/changelog.d/3184.feature +++ /dev/null @@ -1 +0,0 @@ -Add /_media/r0/config diff --git a/changelog.d/3423.misc b/changelog.d/3423.misc deleted file mode 100644 index 51768c6d1..000000000 --- a/changelog.d/3423.misc +++ /dev/null @@ -1 +0,0 @@ -The test suite now can run under PostgreSQL. diff --git a/changelog.d/3568.feature b/changelog.d/3568.feature deleted file mode 100644 index 247f02ba4..000000000 --- a/changelog.d/3568.feature +++ /dev/null @@ -1 +0,0 @@ -speed up /members API and add `at` and `membership` params as per MSC1227 diff --git a/changelog.d/3574.feature b/changelog.d/3574.feature deleted file mode 100644 index 87ac32df7..000000000 --- a/changelog.d/3574.feature +++ /dev/null @@ -1 +0,0 @@ -implement `summary` block in /sync response as per MSC688 diff --git a/changelog.d/3589.feature b/changelog.d/3589.feature deleted file mode 100644 index a8d712471..000000000 --- a/changelog.d/3589.feature +++ /dev/null @@ -1 +0,0 @@ -Add lazy-loading support to /messages as per MSC1227 diff --git a/changelog.d/3632.misc b/changelog.d/3632.misc deleted file mode 100644 index 9d64bbe83..000000000 --- a/changelog.d/3632.misc +++ /dev/null @@ -1 +0,0 @@ -Refactor HTTP replication endpoints to reduce code duplication diff --git a/changelog.d/3633.feature b/changelog.d/3633.feature deleted file mode 100644 index 8007a0484..000000000 --- a/changelog.d/3633.feature +++ /dev/null @@ -1 +0,0 @@ -Add ability to limit number of monthly active users on the server diff --git a/changelog.d/3647.misc b/changelog.d/3647.misc deleted file mode 100644 index dbc66dae6..000000000 --- a/changelog.d/3647.misc +++ /dev/null @@ -1 +0,0 @@ -Tests now correctly execute on Python 3. diff --git a/changelog.d/3653.feature b/changelog.d/3653.feature deleted file mode 100644 index 6c5422994..000000000 --- a/changelog.d/3653.feature +++ /dev/null @@ -1 +0,0 @@ -Support more federation endpoints on workers diff --git a/changelog.d/3654.feature b/changelog.d/3654.feature deleted file mode 100644 index 35c95580b..000000000 --- a/changelog.d/3654.feature +++ /dev/null @@ -1 +0,0 @@ -Basic support for room versioning diff --git a/changelog.d/3655.feature b/changelog.d/3655.feature deleted file mode 100644 index 1134e549e..000000000 --- a/changelog.d/3655.feature +++ /dev/null @@ -1 +0,0 @@ -Ability to disable client/server Synapse via conf toggle diff --git a/changelog.d/3658.bugfix b/changelog.d/3658.bugfix deleted file mode 100644 index 556011a15..000000000 --- a/changelog.d/3658.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix occasional glitches in the synapse_event_persisted_position metric diff --git a/changelog.d/3660.misc b/changelog.d/3660.misc deleted file mode 100644 index acd814c27..000000000 --- a/changelog.d/3660.misc +++ /dev/null @@ -1 +0,0 @@ -Sytests can now be run inside a Docker container. diff --git a/changelog.d/3661.bugfix b/changelog.d/3661.bugfix deleted file mode 100644 index f2b4703d8..000000000 --- a/changelog.d/3661.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix bug on deleting 3pid when using identity servers that don't support unbind API diff --git a/changelog.d/3662.feature b/changelog.d/3662.feature deleted file mode 100644 index daacef086..000000000 --- a/changelog.d/3662.feature +++ /dev/null @@ -1 +0,0 @@ -Ability to whitelist specific threepids against monthly active user limiting diff --git a/changelog.d/3664.feature b/changelog.d/3664.feature deleted file mode 100644 index 184dde993..000000000 --- a/changelog.d/3664.feature +++ /dev/null @@ -1 +0,0 @@ -Add some metrics for the appservice and federation event sending loops diff --git a/changelog.d/3668.misc b/changelog.d/3668.misc deleted file mode 100644 index f9265addf..000000000 --- a/changelog.d/3668.misc +++ /dev/null @@ -1 +0,0 @@ -Port over enough to Python 3 to allow the sytests to start. diff --git a/changelog.d/3669.misc b/changelog.d/3669.misc deleted file mode 100644 index fc579ddc6..000000000 --- a/changelog.d/3669.misc +++ /dev/null @@ -1 +0,0 @@ -Update docker base image from alpine 3.7 to 3.8. diff --git a/changelog.d/3670.feature b/changelog.d/3670.feature deleted file mode 100644 index ba00f2d2e..000000000 --- a/changelog.d/3670.feature +++ /dev/null @@ -1 +0,0 @@ -Where server is disabled, block ability for locked out users to read new messages diff --git a/changelog.d/3676.bugfix b/changelog.d/3676.bugfix deleted file mode 100644 index 7b23a2773..000000000 --- a/changelog.d/3676.bugfix +++ /dev/null @@ -1 +0,0 @@ -Make the tests pass on Twisted < 18.7.0 diff --git a/changelog.d/3677.bugfix b/changelog.d/3677.bugfix deleted file mode 100644 index caa551627..000000000 --- a/changelog.d/3677.bugfix +++ /dev/null @@ -1 +0,0 @@ -Don’t ship recaptcha_ajax.js, use it directly from Google diff --git a/changelog.d/3678.misc b/changelog.d/3678.misc deleted file mode 100644 index 0d7c8da64..000000000 --- a/changelog.d/3678.misc +++ /dev/null @@ -1 +0,0 @@ -Rename synapse.util.async to synapse.util.async_helpers to mitigate async becoming a keyword on Python 3.7. diff --git a/changelog.d/3679.misc b/changelog.d/3679.misc deleted file mode 100644 index 1de0a0f2b..000000000 --- a/changelog.d/3679.misc +++ /dev/null @@ -1 +0,0 @@ -Synapse's tests are now formatted with the black autoformatter. diff --git a/changelog.d/3681.bugfix b/changelog.d/3681.bugfix deleted file mode 100644 index d18a69cd0..000000000 --- a/changelog.d/3681.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fixes test_reap_monthly_active_users so it passes under postgres diff --git a/changelog.d/3684.misc b/changelog.d/3684.misc deleted file mode 100644 index 4c013263c..000000000 --- a/changelog.d/3684.misc +++ /dev/null @@ -1 +0,0 @@ -Implemented a new testing base class to reduce test boilerplate. diff --git a/changelog.d/3687.feature b/changelog.d/3687.feature deleted file mode 100644 index 64b89f641..000000000 --- a/changelog.d/3687.feature +++ /dev/null @@ -1 +0,0 @@ -set admin uri via config, to be used in error messages where the user should contact the administrator diff --git a/changelog.d/3689.bugfix b/changelog.d/3689.bugfix deleted file mode 100644 index 934d03983..000000000 --- a/changelog.d/3689.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix mau blocking calulation bug on login diff --git a/changelog.d/3690.misc b/changelog.d/3690.misc deleted file mode 100644 index 710add024..000000000 --- a/changelog.d/3690.misc +++ /dev/null @@ -1 +0,0 @@ -Rename MAU prometheus metrics diff --git a/changelog.d/3692.bugfix b/changelog.d/3692.bugfix deleted file mode 100644 index f44e13dca..000000000 --- a/changelog.d/3692.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix missing yield in synapse.storage.monthly_active_users.initialise_reserved_users diff --git a/changelog.d/3694.feature b/changelog.d/3694.feature deleted file mode 100644 index 916a342ff..000000000 --- a/changelog.d/3694.feature +++ /dev/null @@ -1 +0,0 @@ -Synapse's presence functionality can now be disabled with the "use_presence" configuration option. diff --git a/changelog.d/3700.bugfix b/changelog.d/3700.bugfix deleted file mode 100644 index 492cce1df..000000000 --- a/changelog.d/3700.bugfix +++ /dev/null @@ -1 +0,0 @@ -Improve HTTP request logging to include all requests \ No newline at end of file diff --git a/changelog.d/3701.bugfix b/changelog.d/3701.bugfix deleted file mode 100644 index c22de3453..000000000 --- a/changelog.d/3701.bugfix +++ /dev/null @@ -1 +0,0 @@ -Avoid timing out requests while we are streaming back the response diff --git a/changelog.d/3703.removal b/changelog.d/3703.removal deleted file mode 100644 index d13ce5adb..000000000 --- a/changelog.d/3703.removal +++ /dev/null @@ -1 +0,0 @@ -The Shared-Secret registration method of the legacy v1/register REST endpoint has been removed. For a replacement, please see [the admin/register API documentation](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/register_api.rst). diff --git a/changelog.d/3705.bugfix b/changelog.d/3705.bugfix deleted file mode 100644 index 6c5422994..000000000 --- a/changelog.d/3705.bugfix +++ /dev/null @@ -1 +0,0 @@ -Support more federation endpoints on workers diff --git a/changelog.d/3707.misc b/changelog.d/3707.misc deleted file mode 100644 index 8123ca654..000000000 --- a/changelog.d/3707.misc +++ /dev/null @@ -1 +0,0 @@ -add new error type ResourceLimit diff --git a/changelog.d/3708.feature b/changelog.d/3708.feature deleted file mode 100644 index 2f146ba62..000000000 --- a/changelog.d/3708.feature +++ /dev/null @@ -1 +0,0 @@ -For resource limit blocked users, prevent writing into rooms diff --git a/changelog.d/3709.misc b/changelog.d/3709.misc deleted file mode 100644 index bbda357d4..000000000 --- a/changelog.d/3709.misc +++ /dev/null @@ -1 +0,0 @@ -Logcontexts for replication command handlers diff --git a/changelog.d/3710.bugfix b/changelog.d/3710.bugfix deleted file mode 100644 index c28e17766..000000000 --- a/changelog.d/3710.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix "Starting db txn 'get_all_updated_receipts' from sentinel context" warning \ No newline at end of file diff --git a/changelog.d/3712.misc b/changelog.d/3712.misc deleted file mode 100644 index 30f8c2af2..000000000 --- a/changelog.d/3712.misc +++ /dev/null @@ -1 +0,0 @@ -Update admin register API documentation to reference a real user ID. diff --git a/changelog.d/3713.bugfix b/changelog.d/3713.bugfix deleted file mode 100644 index 6c5422994..000000000 --- a/changelog.d/3713.bugfix +++ /dev/null @@ -1 +0,0 @@ -Support more federation endpoints on workers diff --git a/changelog.d/3719.bugfix b/changelog.d/3719.bugfix deleted file mode 100644 index 095d9288e..000000000 --- a/changelog.d/3719.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix bug where `state_cache` cache factor ignored environment variables From 55e6bdf28798153de5c2a6cf9bf0a6618f59168a Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 20 Aug 2018 18:20:07 +0100 Subject: [PATCH 3/6] Robustness fix for logcontext filter Make the logcontext filter not explode if it somehow ends up with a logcontext of None, since that infinite-loops the whole logging system. --- synapse/util/logcontext.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/synapse/util/logcontext.py b/synapse/util/logcontext.py index 07e83fadd..848765e53 100644 --- a/synapse/util/logcontext.py +++ b/synapse/util/logcontext.py @@ -385,7 +385,13 @@ class LoggingContextFilter(logging.Filter): context = LoggingContext.current_context() for key, value in self.defaults.items(): setattr(record, key, value) - context.copy_to(record) + + # context should never be None, but if it somehow ends up being, then + # we end up in a death spiral of infinite loops, so let's check, for + # robustness' sake. + if context is not None: + context.copy_to(record) + return True From be6527325a829e7d5e4540d7a1983a6e6fda2c0f Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 20 Aug 2018 18:21:10 +0100 Subject: [PATCH 4/6] Fix exceptions when a connection is closed before we read the headers This fixes bugs introduced in #3700, by making sure that we behave sanely when an incoming connection is closed before the headers are read. --- synapse/http/site.py | 8 +++++++- synapse/util/logcontext.py | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/synapse/http/site.py b/synapse/http/site.py index ad2a98468..88ed3714f 100644 --- a/synapse/http/site.py +++ b/synapse/http/site.py @@ -182,7 +182,7 @@ class SynapseRequest(Request): # the client disconnects. with PreserveLoggingContext(self.logcontext): logger.warn( - "Error processing request: %s %s", reason.type, reason.value, + "Error processing request %r: %s %s", self, reason.type, reason.value, ) if not self._is_processing: @@ -219,6 +219,12 @@ class SynapseRequest(Request): """Log the completion of this request and update the metrics """ + if self.logcontext is None: + # this can happen if the connection closed before we read the + # headers (so render was never called). In that case we'll already + # have logged a warning, so just bail out. + return + usage = self.logcontext.get_resource_usage() if self._processing_finished_time is None: diff --git a/synapse/util/logcontext.py b/synapse/util/logcontext.py index 848765e53..a0c2d3761 100644 --- a/synapse/util/logcontext.py +++ b/synapse/util/logcontext.py @@ -402,7 +402,9 @@ class PreserveLoggingContext(object): __slots__ = ["current_context", "new_context", "has_parent"] - def __init__(self, new_context=LoggingContext.sentinel): + def __init__(self, new_context=None): + if new_context is None: + new_context = LoggingContext.sentinel self.new_context = new_context def __enter__(self): From 012d612f9d3c8ca58538fffe4207309bf1644cd8 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 20 Aug 2018 18:26:27 +0100 Subject: [PATCH 5/6] changelog --- changelog.d/3723.bugfix | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/3723.bugfix diff --git a/changelog.d/3723.bugfix b/changelog.d/3723.bugfix new file mode 100644 index 000000000..7c2108369 --- /dev/null +++ b/changelog.d/3723.bugfix @@ -0,0 +1 @@ +Fix bug in v0.33.3rc1 which caused infinite loops and OOMs From 3b5b64ac99c1a253cc24b6a1063247115ba18cd3 Mon Sep 17 00:00:00 2001 From: Amber Brown Date: Tue, 21 Aug 2018 03:48:55 +1000 Subject: [PATCH 6/6] changelog --- CHANGES.md | 9 +++++++++ changelog.d/3723.bugfix | 1 - synapse/__init__.py | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) delete mode 100644 changelog.d/3723.bugfix diff --git a/CHANGES.md b/CHANGES.md index 68ce5d147..df0117897 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,12 @@ +Synapse 0.33.3rc2 (2018-08-21) +============================== + +Bugfixes +-------- + +- Fix bug in v0.33.3rc1 which caused infinite loops and OOMs ([\#3723](https://github.com/matrix-org/synapse/issues/3723)) + + Synapse 0.33.3rc1 (2018-08-21) ============================== diff --git a/changelog.d/3723.bugfix b/changelog.d/3723.bugfix deleted file mode 100644 index 7c2108369..000000000 --- a/changelog.d/3723.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix bug in v0.33.3rc1 which caused infinite loops and OOMs diff --git a/synapse/__init__.py b/synapse/__init__.py index 5175a1161..252c49ca8 100644 --- a/synapse/__init__.py +++ b/synapse/__init__.py @@ -17,4 +17,4 @@ """ This is a reference implementation of a Matrix home server. """ -__version__ = "0.33.3rc1" +__version__ = "0.33.3rc2"