mirror of
https://github.com/zulip/zulip.git
synced 2026-07-06 21:18:58 +08:00
When flushing caches, we want to ensure that even processes which may have a wrong cache-key-prefix know to fetch the latest data from the database. This is complicated by the cache-key-prefixes being stored on disk, and thus checking that every cache delete is not sufficiently performant. We store the list of cache-key-prefixes in the cache, itself, with no prefix. This cache is updated when a new cache-key is written, and is also allowed to lapse after 24 hours. Updating this global cache entry on new prefix creation ensures that even a not-yet-restarted-into deployment will have its caches appropriately purged if changes are made to the underlying data. However, this both adds a cache-get, as well as multiplies the size of all cache clears; for large bulk clears (e.g. for stream renames, which clear the cache for all message-ids in them) this may prove untenable. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| build-groonga | ||
| build-pgroonga | ||
| check_rabbitmq_queue.py | ||
| check-database-compatibility | ||
| clean_emoji_cache.py | ||
| clean_unused_caches.py | ||
| clean_venv_cache.py | ||
| create-production-venv | ||
| email-mirror-postfix | ||
| fix-standalone-certbot | ||
| hash_reqs.py | ||
| install | ||
| install-node | ||
| node_cache.py | ||
| puppet_cache.py | ||
| pythonrc.py | ||
| queue_workers.py | ||
| run_hooks.py | ||
| setup_path.py | ||
| setup_venv.py | ||
| setup-apt-repo | ||
| setup-yum-repo | ||
| sharding.py | ||
| supervisor.py | ||
| supported-os | ||
| unpack-zulip | ||
| update-git-upstream | ||
| upgrade-zulip | ||
| upgrade-zulip-from-git | ||
| upgrade-zulip-stage-2 | ||
| upgrade-zulip-stage-3 | ||
| warn-rabbitmq-nodename-change | ||
| zulip_tools.py | ||