summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Kaye <1917473+michaelkaye@users.noreply.github.com>2019-10-24 18:08:45 +0100
committerMichael Kaye <1917473+michaelkaye@users.noreply.github.com>2019-10-24 18:08:45 +0100
commitf85b9842f07aad66daf09d5ac6d943b430513434 (patch)
treef8c9f863daf1510ba6c485160138a0415cf38a9a
parentMerge pull request #6248 from matrix-org/erikj/move_schema_files (diff)
downloadsynapse-f85b9842f07aad66daf09d5ac6d943b430513434.tar.xz
Don't encode object as UTF-8 string if not needed.
I believe that string formatting ~10-15 sized events will
take a proportion of CPU time.
-rw-r--r--synapse/crypto/event_signing.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/synapse/crypto/event_signing.py b/synapse/crypto/event_signing.py

index 694fb2c816..ccaa8a9920 100644 --- a/synapse/crypto/event_signing.py +++ b/synapse/crypto/event_signing.py
@@ -125,9 +125,11 @@ def compute_event_signature(event_dict, signature_name, signing_key): redact_json = prune_event_dict(event_dict) redact_json.pop("age_ts", None) redact_json.pop("unsigned", None) - logger.debug("Signing event: %s", encode_canonical_json(redact_json)) + if logger.isEnabledFor(logging.DEBUG): + logger.debug("Signing event: %s", encode_canonical_json(redact_json)) redact_json = sign_json(redact_json, signature_name, signing_key) - logger.debug("Signed event: %s", encode_canonical_json(redact_json)) + if logger.isEnabledFor(logging.DEBUG): + logger.debug("Signed event: %s", encode_canonical_json(redact_json)) return redact_json["signatures"]