Where are hooks stored/cached? I have a hook_form_alter in a module, and it should be firing, but it appears it's not. I've cleared caches and rebuilt the registry. Is there someplace in the database or somewhere else where I can see if my hook is registed? FWIW here is my hook:

/**
 * Implements hook_form_alter
 */
function my_module_form_alter(&amp;$form, &amp;$form_state, $form_id) {
  drupal_set_message($form_id);
}
The hook implementations ARE cached inside the database.. this is why it's necessary to clear cache in order for a newly implemented hook to fire.

Taking a look, inside the cache_bootstrap table, there is a row with cid value of module_implements, and it's data value is a very large serialized string.  When unserialized, it is an array of the form


  'hook_name' => array('module1', 'module2', 'module3', ...)


The hook names have the hook_ beginning lopped off, so hook_block_info() will appear as block_info. I believe the value is the list of modules which implement that hook, so...


  'block_info' => array('views', 'webform', 'my_module')


Means that the following hooks are registered and should be fired:

views_block_info()
webform_block_info()
my_module_block_info()