Skip navigation

Private update status cache system

  1. drupal
    1. 6 drupal/modules/update/update.module
    2. 7 drupal/modules/update/update.module

Functions to manage the update status cache.

We specifically do NOT use the core cache API for saving the fetched data about available updates. It is vitally important that this cache is only cleared when we're populating it after successfully fetching new available update data. Usage of the core cache API results in all sorts of potential problems that would result in attempting to fetch available update data all the time, including if a site has a "minimum cache lifetime" (which is both a minimum and a maximum) defined, or if a site uses memcache or another plug-able cache system that assumes volatile caches.

Update module still uses the {cache_update} table, but instead of using cache_set(), cache_get(), and cache_clear_all(), there are private helper functions that implement these same basic tasks but ensure that the cache is not prematurely cleared, and that the data is always stored in the database, even if memcache or another cache backend is in use.

Functions & methods

update_flush_cachesImplements hook_flush_caches().
_update_cache_clearInvalidates cached data relating to update status.
_update_cache_getRetrieve data from the private update status cache table.
_update_cache_setStore data in the private update status cache table.
_update_get_cache_multipleReturn an array of cache items with a given cache ID prefix.


drupal/modules/update/update.module, line 712
The "Update status" module checks for available updates of Drupal core and any installed contributed modules and themes. It warns site administrators if newer releases are available via the system status report (admin/reports/status), theā€¦