function hook_cache_flush

Flush all persistent and static caches.

This hook asks your module to clear all of its static caches, in order to ensure a clean environment for subsequently invoked data rebuilds.

Do NOT use this hook for rebuilding information. Only use it to flush custom caches.

Static caches using drupal_static() do not need to be reset manually. However, all other static variables that do not use drupal_static() must be manually reset.

This hook is invoked by drupal_flush_all_caches(). It runs before module data is updated and before hook_rebuild().

See also

drupal_flush_all_caches()

hook_rebuild()

Related topics

2 functions implement hook_cache_flush()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

config_test_cache_flush in drupal/core/modules/config/tests/config_test/config_test.module
Implements hook_cache_flush().
update_script_test_cache_flush in drupal/core/modules/system/tests/modules/update_script_test/update_script_test.module
Implements hook_cache_flush().
2 invocations of hook_cache_flush()
drupal_flush_all_caches in drupal/core/includes/common.inc
Flushes all persistent caches, resets all variables, and rebuilds all data structures.
system_cron in drupal/core/modules/system/system.module
Implements hook_cron().

File

drupal/core/modules/system/system.api.php, line 1949
Hooks provided by Drupal core and the System module.

Code

function hook_cache_flush() {
  if (defined('MAINTENANCE_MODE') && MAINTENANCE_MODE == 'update') {
    _update_cache_clear();
  }
}