Приватная система кэширования модуля обновлений
В модуле обновления для хранения выбранных данных о доступных обновлениях не используется стандартный API кеширования. Жизненно важно чтобы этот кеш очищался только после успешного опроса о новых доступных обновлений данных.
Использование же стандартного API кеширования приводит к целому спектру возможных проблем, главная из которых — постоянные попытки выбрать доступные обновления даже если для сайта определено "минимальное время жизни кеша" (которое может быть как минимальным, так и максимальным), или если сайт использует memcaсhe или другую подключаемую систему кеширования, допускающую временные кеши.
Модуль обновления, как и все, использует таблицу '{cashe_update}'
, но вместо использования функций cache_set()
, cache_get()
, и cache_clear_all()
существуют приватные вспомогательные функции, которые реализуют те же базовые задачи, однако, обеспечивают принудительное очищают кеша обновлений, а также следят за тем, чтобы данные всегда хранились в БД, даже если используется memcaсhe или другая буферная система кеширования.
Функции
Имя | Описание |
---|---|
update_flush_caches modules/update/update.module | Исполнение hook_flush_caches(). |
update_invalidate_cache modules/update/update.module | Очищает кеш данных модуля обновлений. |
_update_cache_clear modules/update/update.module | Аннулирование индивидуальных кэшированных данных относящихся к обновлению статуса. |
_update_cache_get modules/update/update.module | Поиск данных из индивидуальной таблицы обновления статуса кэша. |
_update_cache_set modules/update/update.module | Хранение данных в индивидуальной таблице кэша обновления статуса. |