preferences: clear cache in a more clever way
Introduce something similar to "cache cookie", but more suitable for preferences that depend both on the site configuration and user preferences. We store for each user a value in _preference_cache and we modify this value each time user change his user preference. This value is then used part of the a cache key. The same mechanism happen with a global value for site and group preferences. See _getCacheId docstring for more details. This way, when one user modify their preference this does not reset cache for every user. Because we have proper invalidation, increase the case duration by using erp5_ui_short instead of erp5_ui_long This is applied to both preference methods and to templates documents inside preferences. test_system_preference_value_prefererred_clear_cache_disabled is updated to use another preference name, because it was same as in a previous test, so that we don't have test isolation problems.
Showing
Please register or sign in to comment