]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
create concise + deterministic cache key for unboundload.options
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 9 Aug 2021 18:43:53 +0000 (14:43 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 9 Aug 2021 18:43:53 +0000 (14:43 -0400)
commit65d4f98b69328f734abb16aa62952ab6aae576f2
tree98fcffe6ef798101e5b46f3eff31c52fb33db0b8
parent5434e64b2f3b28609bece1e2b4d07a7afa431b13
create concise + deterministic cache key for unboundload.options

Fixed issue in loader strategies where the use of the
:meth:`_orm.Load.options` method, particularly when nesting multiple calls,
would generate an overly long and more importantly non-deterministic cache
key, leading to very large cache keys which were also not allowing
efficient cache usage, both in terms of total memory used as well as number
of entries used in the cache itself.

Fixes: #6869
Change-Id: I42bd3564d55a5fb95a21d0e7eef30d50c1274da0
doc/build/changelog/unreleased_14/6869.rst [new file with mode: 0644]
lib/sqlalchemy/orm/strategy_options.py
test/orm/test_cache_key.py