diff options
author | David Robertson <davidr@element.io> | 2022-02-02 16:25:17 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-02 16:25:17 +0000 |
commit | dd7f825118f1b8f2789eee9498912ce362a79224 (patch) | |
tree | 089292c98372e0ba76c457a1675e871c62f6be97 | |
parent | Disable coverage calculation for olddeps build. (#11888) (diff) | |
download | synapse-dd7f825118f1b8f2789eee9498912ce362a79224.tar.xz |
Fix losing incoming EDUs if debug logging enabled (#11890)
* Fix losing incoming EDUs if debug logging enabled Fixes #11889. Homeservers should only be affected if the `synapse.8631_debug` logger was enabled for DEBUG mode. I am not sure if this merits a bugfix release: I think the logging can be disabled in config if anyone is affected? But it is still pretty bad.
-rw-r--r-- | changelog.d/11890.bugfix | 1 | ||||
-rw-r--r-- | synapse/federation/transport/server/federation.py | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/changelog.d/11890.bugfix b/changelog.d/11890.bugfix new file mode 100644 index 0000000000..6b696692e3 --- /dev/null +++ b/changelog.d/11890.bugfix @@ -0,0 +1 @@ +Fix a bug introduced in Synapse 1.51.0rc1 where incoming federation transactions containing at least one EDU would be dropped if debug logging was enabled for `synapse.8631_debug`. \ No newline at end of file diff --git a/synapse/federation/transport/server/federation.py b/synapse/federation/transport/server/federation.py index 9c1ad5851f..d86dfede4e 100644 --- a/synapse/federation/transport/server/federation.py +++ b/synapse/federation/transport/server/federation.py @@ -109,11 +109,11 @@ class FederationSendServlet(BaseFederationServerServlet): ) if issue_8631_logger.isEnabledFor(logging.DEBUG): - DEVICE_UPDATE_EDUS = {"m.device_list_update", "m.signing_key_update"} + DEVICE_UPDATE_EDUS = ["m.device_list_update", "m.signing_key_update"] device_list_updates = [ edu.content for edu in transaction_data.get("edus", []) - if edu.edu_type in DEVICE_UPDATE_EDUS + if edu.get("edu_type") in DEVICE_UPDATE_EDUS ] if device_list_updates: issue_8631_logger.debug( |