diff options
author | Erik Johnston <erik@matrix.org> | 2022-08-23 15:53:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-23 14:53:27 +0000 |
commit | f7ddfe17a30a50205a23bf5ca4d7d71e691e1e48 (patch) | |
tree | 3af1cd2f62868f6e1fe0f455e7cf19739161fdfa /changelog.d | |
parent | Fix regression caused by #13573 (#13600) (diff) | |
download | synapse-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.misc | 1 |
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`. |