summary refs log tree commit diff
path: root/changelog.d
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2022-08-23 15:53:27 +0100
committerGitHub <noreply@github.com>2022-08-23 14:53:27 +0000
commitf7ddfe17a30a50205a23bf5ca4d7d71e691e1e48 (patch)
tree3af1cd2f62868f6e1fe0f455e7cf19739161fdfa /changelog.d
parentFix regression caused by #13573 (#13600) (diff)
downloadsynapse-f7ddfe17a30a50205a23bf5ca4d7d71e691e1e48.tar.xz
Speed up `@cachedList` (#13591)
This speeds things up by ~2x.

The vast majority of the time is now spent in `LruCache` moving things around the linked lists.

We do this via two things:
1. Don't create a deferred per-key during bulk set operations in `DeferredCache`. Instead, only create them if a subsequent caller asks for the key.
2. Add a bulk lookup API to `DeferredCache` rather than use a loop.
Diffstat (limited to 'changelog.d')
-rw-r--r--changelog.d/13591.misc1
1 files changed, 1 insertions, 0 deletions
diff --git a/changelog.d/13591.misc b/changelog.d/13591.misc
new file mode 100644
index 0000000000..080e865e55
--- /dev/null
+++ b/changelog.d/13591.misc
@@ -0,0 +1 @@
+Improve performance of `@cachedList`.