Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.984
diff -u -p -r1.984 common.inc
--- includes/common.inc	5 Sep 2009 15:05:01 -0000	1.984
+++ includes/common.inc	9 Sep 2009 03:56:17 -0000
@@ -4807,9 +4807,10 @@ function drupal_get_schema_unprocessed($
   if (!is_null($table) && isset($schema[$table])) {
     return $schema[$table];
   }
-  else {
+  else if (!empty($schema)) {
     return $schema;
   }
+  return array();
 }
 
 /**
Index: includes/install.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/install.inc,v
retrieving revision 1.110
diff -u -p -r1.110 install.inc
--- includes/install.inc	24 Aug 2009 03:13:44 -0000	1.110
+++ includes/install.inc	9 Sep 2009 03:56:17 -0000
@@ -586,8 +586,9 @@ function drupal_install_modules($module_
  */
 function _drupal_install_module($module) {
   if (drupal_get_installed_schema_version($module, TRUE) == SCHEMA_UNINSTALLED) {
-    module_load_install($module);
     drupal_load('module', $module);
+    drupal_install_schema($module);
+    // Now allow the module to perform install tasks.
     module_invoke($module, 'install');
     $versions = drupal_get_schema_versions($module);
     drupal_set_installed_schema_version($module, $versions ? max($versions) : SCHEMA_INSTALLED);
@@ -663,6 +664,8 @@ function drupal_uninstall_modules($modul
     // Uninstall the module.
     module_load_install($module);
     module_invoke($module, 'uninstall');
+    drupal_uninstall_schema($module);
+
     watchdog('system', '%module module uninstalled.', array('%module' => $module), WATCHDOG_INFO);
 
     // Now remove the menu links for all paths declared by this module.
Index: includes/database/database.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/database.inc,v
retrieving revision 1.74
diff -u -p -r1.74 database.inc
--- includes/database/database.inc	24 Aug 2009 18:22:54 -0000	1.74
+++ includes/database/database.inc	9 Sep 2009 03:56:17 -0000
@@ -2130,7 +2130,9 @@ function db_close(array $options = array
  *   A Schema API table definition array.
  */
 function db_create_table(&$ret, $name, $table) {
-  return Database::getConnection()->schema()->createTable($ret, $name, $table);
+  if (!db_table_exists($name)) {
+    return Database::getConnection()->schema()->createTable($ret, $name, $table);
+  }
 }
 
 /**
Index: modules/aggregator/aggregator.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/aggregator/aggregator.install,v
retrieving revision 1.25
diff -u -p -r1.25 aggregator.install
--- modules/aggregator/aggregator.install	2 Aug 2009 08:16:16 -0000	1.25
+++ modules/aggregator/aggregator.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function aggregator_install() {
-  // Create tables.
-  drupal_install_schema('aggregator');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function aggregator_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('aggregator');
-
   variable_del('aggregator_allowed_html_tags');
   variable_del('aggregator_summary_items');
   variable_del('aggregator_clear');
Index: modules/block/block.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/block/block.install,v
retrieving revision 1.31
diff -u -p -r1.31 block.install
--- modules/block/block.install	28 Aug 2009 19:44:05 -0000	1.31
+++ modules/block/block.install	9 Sep 2009 03:56:17 -0000
@@ -205,7 +205,6 @@ function block_schema() {
  * Implement hook_install().
  */
 function block_install() {
-  drupal_install_schema('block');
 
   // Block should go first so that other modules can alter its output
   // during hook_page_alter(). Almost everything on the page is a block,
@@ -217,13 +216,6 @@ function block_install() {
 }
 
 /**
- * Implement hook_uninstall().
- */
-function block_uninstall() {
-  drupal_uninstall_schema('block');
-}
-
-/**
  * Set system.weight to a low value for block module.
  *
  * Block should go first so that other modules can alter its output
Index: modules/book/book.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/book/book.install,v
retrieving revision 1.32
diff -u -p -r1.32 book.install
--- modules/book/book.install	27 Jun 2009 11:11:53 -0000	1.32
+++ modules/book/book.install	9 Sep 2009 03:56:17 -0000
@@ -10,8 +10,6 @@
  * Implement hook_install().
  */
 function book_install() {
-  // Create tables.
-  drupal_install_schema('book');
   // Add the node type.
   _book_install_type_create();
 }
@@ -23,8 +21,6 @@ function book_uninstall() {
   // Delete menu links.
   db_query("DELETE FROM {menu_links} WHERE module = 'book'");
   menu_cache_clear_all();
-  // Remove tables.
-  drupal_uninstall_schema('book');
 }
 
 function _book_install_type_create() {
Index: modules/comment/comment.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/comment/comment.install,v
retrieving revision 1.44
diff -u -p -r1.44 comment.install
--- modules/comment/comment.install	9 Aug 2009 02:46:27 -0000	1.44
+++ modules/comment/comment.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function comment_install() {
-  // Create tables.
-  drupal_install_schema('comment');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function comment_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('comment');
-
   // Remove variables.
   variable_del('comment_block_count');
   $node_types = array_keys(node_type_get_types());
Index: modules/contact/contact.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/contact/contact.install,v
retrieving revision 1.13
diff -u -p -r1.13 contact.install
--- modules/contact/contact.install	27 May 2009 18:33:56 -0000	1.13
+++ modules/contact/contact.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function contact_install() {
-  // Create tables.
-  drupal_install_schema('contact');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function contact_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('contact');
-
   variable_del('contact_default_status');
   variable_del('contact_form_information');
   variable_del('contact_hourly_threshold');
Index: modules/dblog/dblog.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/dblog/dblog.install,v
retrieving revision 1.16
diff -u -p -r1.16 dblog.install
--- modules/dblog/dblog.install	27 May 2009 18:33:56 -0000	1.16
+++ modules/dblog/dblog.install	9 Sep 2009 03:56:17 -0000
@@ -7,22 +7,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function dblog_install() {
-  // Create tables.
-  drupal_install_schema('dblog');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function dblog_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('dblog');
-}
-
-/**
  * Implement hook_schema().
  */
 function dblog_schema() {
Index: modules/field/field.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/field.install,v
retrieving revision 1.12
diff -u -p -r1.12 field.install
--- modules/field/field.install	22 Aug 2009 00:58:52 -0000	1.12
+++ modules/field/field.install	9 Sep 2009 03:56:17 -0000
@@ -7,13 +7,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function field_install() {
-  drupal_install_schema('field');
-}
-
-/**
  * Implement hook_schema.
  */
 function field_schema() {
Index: modules/field/modules/field_sql_storage/field_sql_storage.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/field_sql_storage/field_sql_storage.install,v
retrieving revision 1.5
diff -u -p -r1.5 field_sql_storage.install
--- modules/field/modules/field_sql_storage/field_sql_storage.install	27 May 2009 18:33:56 -0000	1.5
+++ modules/field/modules/field_sql_storage/field_sql_storage.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function field_sql_storage_install() {
-  drupal_install_schema('field_sql_storage');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function field_sql_storage_uninstall() {
-  drupal_uninstall_schema('field_sql_storage');
-}
-
-/**
  * Implement hook_schema().
  */
 function field_sql_storage_schema() {
Index: modules/forum/forum.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/forum/forum.install,v
retrieving revision 1.33
diff -u -p -r1.33 forum.install
--- modules/forum/forum.install	20 Aug 2009 14:58:30 -0000	1.33
+++ modules/forum/forum.install	9 Sep 2009 03:56:17 -0000
@@ -10,8 +10,6 @@
  * Implement hook_install().
  */
 function forum_install() {
-  // Create tables.
-  drupal_install_schema('forum');
   // Set the weight of the forum.module to 1 so it is loaded after the taxonomy.module.
   db_update('system')
     ->fields(array('weight' => 1))
@@ -61,7 +59,6 @@ function forum_uninstall() {
   $vid = variable_get('forum_nav_vocabulary', 0);
   taxonomy_vocabulary_delete($vid);
 
-  drupal_uninstall_schema('forum');
   variable_del('forum_containers');
   variable_del('forum_nav_vocabulary');
   variable_del('forum_hot_topic');
Index: modules/image/image.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/image/image.install,v
retrieving revision 1.2
diff -u -p -r1.2 image.install
--- modules/image/image.install	17 Aug 2009 19:14:40 -0000	1.2
+++ modules/image/image.install	9 Sep 2009 03:56:17 -0000
@@ -10,8 +10,6 @@
  * Implement hook_install().
  */
 function image_install() {
-  drupal_install_schema('image');
-
   // Create the styles directory and ensure it's writable.
   $path = file_directory_path() . '/styles';
   file_prepare_directory($path, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);
@@ -21,8 +19,6 @@ function image_install() {
  * Implement hook_uninstall().
  */
 function image_uninstall() {
-  drupal_uninstall_schema('image');
-
   // Remove the styles directory and generated images.
   $path = file_directory_path() . '/styles';
   file_unmanaged_delete_recursive($path);
Index: modules/locale/locale.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/locale/locale.install,v
retrieving revision 1.47
diff -u -p -r1.47 locale.install
--- modules/locale/locale.install	17 Aug 2009 19:14:40 -0000	1.47
+++ modules/locale/locale.install	9 Sep 2009 03:56:17 -0000
@@ -14,9 +14,6 @@ function locale_install() {
   // fields; non-MySQL database servers need to ensure the field type is text
   // and that LIKE produces a case-sensitive comparison.
 
-  // Create tables.
-  drupal_install_schema('locale');
-
   db_insert('languages')
     ->fields(array(
       'language' => 'en',
@@ -83,8 +80,6 @@ function locale_uninstall() {
   // try to query the unexisting {locales_source} and {locales_target} tables.
   drupal_language_initialize();
 
-  // Remove tables.
-  drupal_uninstall_schema('locale');
 }
 
 /**
Index: modules/menu/menu.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/menu/menu.install,v
retrieving revision 1.19
diff -u -p -r1.19 menu.install
--- modules/menu/menu.install	20 Jul 2009 18:51:33 -0000	1.19
+++ modules/menu/menu.install	9 Sep 2009 03:56:17 -0000
@@ -10,8 +10,6 @@
  * Implement hook_install().
  */
 function menu_install() {
-  // Create tables.
-  drupal_install_schema('menu');
   $system_menus = menu_list_system_menus();
   $descriptions = array(
     'navigation' => 'The <em>Navigation</em> menu contains links such as Recent posts (if the Tracker module is enabled). Non-administrative links are added to this menu by default by modules.',
@@ -31,8 +29,6 @@ function menu_install() {
  * Implement hook_uninstall().
  */
 function menu_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('menu');
   menu_rebuild();
 }
 
Index: modules/openid/openid.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/openid/openid.install,v
retrieving revision 1.7
diff -u -p -r1.7 openid.install
--- modules/openid/openid.install	29 Aug 2009 21:07:43 -0000	1.7
+++ modules/openid/openid.install	9 Sep 2009 03:56:17 -0000
@@ -7,22 +7,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function openid_install() {
-  // Create table.
-  drupal_install_schema('openid');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function openid_uninstall() {
-  // Remove table.
-  drupal_uninstall_schema('openid');
-}
-
-/**
  * Implement hook_schema().
  */
 function openid_schema() {
Index: modules/poll/poll.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/poll/poll.install,v
retrieving revision 1.24
diff -u -p -r1.24 poll.install
--- modules/poll/poll.install	1 Jun 2009 22:07:09 -0000	1.24
+++ modules/poll/poll.install	9 Sep 2009 03:56:17 -0000
@@ -7,22 +7,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function poll_install() {
-  // Create tables.
-  drupal_install_schema('poll');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function poll_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('poll');
-}
-
-/**
  * Implement hook_schema().
  */
 function poll_schema() {
Index: modules/profile/profile.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/profile/profile.install,v
retrieving revision 1.20
diff -u -p -r1.20 profile.install
--- modules/profile/profile.install	1 Jun 2009 22:07:09 -0000	1.20
+++ modules/profile/profile.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function profile_install() {
-  // Create tables.
-  drupal_install_schema('profile');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function profile_uninstall() {
-  // Remove tables
-  drupal_uninstall_schema('profile');
-
   variable_del('profile_block_author_fields');
 }
 
Index: modules/search/search.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/search/search.install,v
retrieving revision 1.22
diff -u -p -r1.22 search.install
--- modules/search/search.install	1 Jun 2009 22:07:09 -0000	1.22
+++ modules/search/search.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function search_install() {
-  // Create tables.
-  drupal_install_schema('search');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function search_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('search');
-
   variable_del('minimum_word_size');
   variable_del('overlap_cjk');
   variable_del('search_cron_limit');
Index: modules/simpletest/simpletest.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/simpletest.install,v
retrieving revision 1.26
diff -u -p -r1.26 simpletest.install
--- modules/simpletest/simpletest.install	17 Aug 2009 19:14:41 -0000	1.26
+++ modules/simpletest/simpletest.install	9 Sep 2009 03:56:17 -0000
@@ -10,7 +10,6 @@
  * Implement hook_install().
  */
 function simpletest_install() {
-  drupal_install_schema('simpletest');
   // Check for files directory.
   $path = 'public://simpletest';
   if (file_prepare_directory($path, FILE_CREATE_DIRECTORY)) {
@@ -110,9 +109,6 @@ function simpletest_uninstall() {
   variable_del('simpletest_clear_results');
   variable_del('simpletest_verbose');
 
-  // Uninstall schema.
-  drupal_uninstall_schema('simpletest');
-
   // Remove generated files.
   $path = file_directory_path() . '/simpletest';
   $files = file_scan_directory($path, '/.*/');
Index: modules/simpletest/tests/database_test.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/database_test.install,v
retrieving revision 1.8
diff -u -p -r1.8 database_test.install
--- modules/simpletest/tests/database_test.install	27 May 2009 18:34:00 -0000	1.8
+++ modules/simpletest/tests/database_test.install	9 Sep 2009 03:56:17 -0000
@@ -204,17 +204,3 @@ function database_test_schema() {
 
   return $schema;
 }
-
-/**
- * Implement hook_install().
- */
-function database_test_install() {
-  drupal_install_schema('database_test');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function database_test_uninstall() {
-  drupal_uninstall_schema('database_test');
-}
Index: modules/simpletest/tests/field_test.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/field_test.install,v
retrieving revision 1.4
diff -u -p -r1.4 field_test.install
--- modules/simpletest/tests/field_test.install	27 May 2009 18:34:00 -0000	1.4
+++ modules/simpletest/tests/field_test.install	9 Sep 2009 03:56:17 -0000
@@ -64,17 +64,3 @@ function field_test_schema() {
 
   return $schema;
 }
-
-/**
- * Implement hook_install().
- */
-function field_test_install() {
-  drupal_install_schema('field_test');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function field_test_uninstall() {
-  drupal_uninstall_schema('field_test');
-}
Index: modules/simpletest/tests/taxonomy_test.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/taxonomy_test.install,v
retrieving revision 1.8
diff -u -p -r1.8 taxonomy_test.install
--- modules/simpletest/tests/taxonomy_test.install	3 Aug 2009 20:19:29 -0000	1.8
+++ modules/simpletest/tests/taxonomy_test.install	9 Sep 2009 03:56:17 -0000
@@ -33,18 +33,3 @@ function taxonomy_test_schema() {
 
   return $schema;
 }
-
-/**
- * Implement hook_install().
- */
-function taxonomy_test_install() {
-  drupal_install_schema('taxonomy_test');
-}
-
-/**
- * Implement hook_uninstall().
- */
-function taxonomy_test_uninstall() {
-  drupal_uninstall_schema('taxonomy_test');
-}
-
Index: modules/statistics/statistics.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/statistics/statistics.install,v
retrieving revision 1.21
diff -u -p -r1.21 statistics.install
--- modules/statistics/statistics.install	1 Jun 2009 22:07:10 -0000	1.21
+++ modules/statistics/statistics.install	9 Sep 2009 03:56:17 -0000
@@ -7,20 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function statistics_install() {
-  // Create tables.
-  drupal_install_schema('statistics');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function statistics_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('statistics');
-
   // Remove variables.
   variable_del('statistics_count_content_views');
   variable_del('statistics_enable_access_log');
Index: modules/system/system.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.admin.inc,v
retrieving revision 1.197
diff -u -p -r1.197 system.admin.inc
--- modules/system/system.admin.inc	26 Aug 2009 10:53:45 -0000	1.197
+++ modules/system/system.admin.inc	9 Sep 2009 03:56:17 -0000
@@ -1051,10 +1051,10 @@ function system_modules_uninstall($form_
     // Grab the module info
     $info = unserialize($module->info);
 
-    // Load the .install file, and check for an uninstall hook.
+    // Load the .install file, and check for an uninstall or schema hook.
     // If the hook exists, the module can be uninstalled.
     module_load_install($module->name);
-    if (module_hook($module->name, 'uninstall')) {
+    if (module_hook($module->name, 'uninstall') || module_hook($module->name, 'schema')) {
       $form['modules'][$module->name]['name'] = array('#markup' => $info['name'] ? $info['name'] : $module->name);
       $form['modules'][$module->name]['description'] = array('#markup' => t($info['description']));
       $options[$module->name] = '';
Index: modules/system/system.api.php
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.api.php,v
retrieving revision 1.72
diff -u -p -r1.72 system.api.php
--- modules/system/system.api.php	5 Sep 2009 13:05:31 -0000	1.72
+++ modules/system/system.api.php	9 Sep 2009 03:56:18 -0000
@@ -1792,7 +1792,10 @@ function hook_query_TAG_alter(QueryAlter
 }
 
 /**
- * Install the current version of the database schema, and any other setup tasks.
+ * Perform setup tasks when the module is installed.
+ *
+ * If the module implements hook_schema(), the database tables will
+ * be created before this hook is fired.
  *
  * The hook will be called the first time a module is installed, and the
  * module's schema version will be set to the module's greatest numbered update
@@ -1802,7 +1805,7 @@ function hook_query_TAG_alter(QueryAlter
  *
  * See the Schema API documentation at
  * @link http://drupal.org/node/146843 http://drupal.org/node/146843 @endlink
- * for details on hook_schema, where a database tables are defined.
+ * for details on hook_schema and how database tables are defined.
  *
  * Note that since this function is called from a full bootstrap, all functions
  * (including those in modules enabled by the current page request) are
@@ -1813,9 +1816,20 @@ function hook_query_TAG_alter(QueryAlter
  * be removed during uninstall should be removed with hook_uninstall().
  *
  * @see hook_uninstall()
+ * @see hook_schema()
  */
 function hook_install() {
-  drupal_install_schema('upload');
+  // Populate the default {node_access} record.
+  db_insert('node_access')
+    ->fields(array(
+      'nid' => 0,
+      'gid' => 0,
+      'realm' => 'all',
+      'grant_view' => 1,
+      'grant_update' => 0,
+      'grant_delete' => 0,
+    ))
+    ->execute();
 }
 
 /**
@@ -1944,15 +1958,19 @@ function hook_update_last_removed() {
  *
  * The information that the module should remove includes:
  * - variables that the module has set using variable_set() or system_settings_form()
- * - tables the module has created, using drupal_uninstall_schema()
  * - modifications to existing tables
  *
- * The module should not remove its entry from the {system} table.
+ * The module should not remove its entry from the {system} table. Database tables
+ * defined by hook_schema() will be removed automatically.
+ *
+ * The uninstall hook will fire when the module gets uninstalled but before the
+ * module's database tables are removed, allowing your module to query its own
+ * tables during this routine.
  *
- * The uninstall hook will fire when the module gets uninstalled.
+ * @see hook_install()
+ * @see hook_schema()
  */
 function hook_uninstall() {
-  drupal_uninstall_schema('upload');
   variable_del('upload_file_types');
 }
 
Index: modules/system/system.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.install,v
retrieving revision 1.384
diff -u -p -r1.384 system.install
--- modules/system/system.install	5 Sep 2009 13:05:31 -0000	1.384
+++ modules/system/system.install	9 Sep 2009 03:56:18 -0000
@@ -338,6 +338,9 @@ function system_install() {
   $modules = array('system', 'filter', 'user', 'node');
   foreach ($modules as $module) {
     drupal_install_schema($module);
+    $versions = drupal_get_schema_versions($module);
+    $version = $versions ? max($versions) : SCHEMA_INSTALLED;
+    drupal_set_installed_schema_version($module, $version);
   }
 
   // Load system theme data appropriately.
Index: modules/taxonomy/taxonomy.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.install,v
retrieving revision 1.21
diff -u -p -r1.21 taxonomy.install
--- modules/taxonomy/taxonomy.install	4 Aug 2009 06:50:07 -0000	1.21
+++ modules/taxonomy/taxonomy.install	9 Sep 2009 03:56:18 -0000
@@ -6,21 +6,10 @@
  * Install, update and uninstall functions for the taxonomy module.
  */
 
- /**
- * Implement hook_install().
- */
-function taxonomy_install() {
-  // Create tables.
-  drupal_install_schema('taxonomy');
-}
-
 /**
  * Implement hook_uninstall().
  */
 function taxonomy_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('taxonomy');
-
   // Remove variables.
   variable_del('taxonomy_override_selector');
   variable_del('taxonomy_terms_per_page_admin');
Index: modules/trigger/trigger.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/trigger/trigger.install,v
retrieving revision 1.11
diff -u -p -r1.11 trigger.install
--- modules/trigger/trigger.install	1 Jun 2009 22:07:10 -0000	1.11
+++ modules/trigger/trigger.install	9 Sep 2009 03:56:18 -0000
@@ -10,22 +10,11 @@
  * Implement hook_install().
  */
 function trigger_install() {
-  // Create tables.
-  drupal_install_schema('trigger');
-
   // Do initial synchronization of actions in code and the database.
   actions_synchronize();
 }
 
 /**
- * Implement hook_uninstall().
- */
-function trigger_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('trigger');
-}
-
-/**
  * Implement hook_schema().
  */
 function trigger_schema() {
Index: modules/update/update.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/update/update.install,v
retrieving revision 1.9
diff -u -p -r1.9 update.install
--- modules/update/update.install	22 Jun 2009 13:21:38 -0000	1.9
+++ modules/update/update.install	9 Sep 2009 03:56:18 -0000
@@ -7,19 +7,9 @@
  */
 
 /**
- * Implement hook_install().
- */
-function update_install() {
-  // Create cache table.
-  drupal_install_schema('update');
-}
-
-/**
  * Implement hook_uninstall().
  */
 function update_uninstall() {
-  // Remove cache table.
-  drupal_uninstall_schema('update');
   // Clear any variables that might be in use
   $variables = array(
     'update_check_frequency',
Index: modules/upload/upload.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/upload/upload.install,v
retrieving revision 1.13
diff -u -p -r1.13 upload.install
--- modules/upload/upload.install	17 Aug 2009 19:14:41 -0000	1.13
+++ modules/upload/upload.install	9 Sep 2009 03:56:18 -0000
@@ -12,26 +12,6 @@
  */
 
 /**
- * Implement hook_install().
- */
-function upload_install() {
-  // Create table. The upload table might have been created in the Drupal 5
-  // to Drupal 6 upgrade, and was migrated from the file_revisions table. So
-  // in this case, there is no need to create the table, it is already there.
-  if (!db_table_exists('upload')) {
-    drupal_install_schema('upload');
-  }
-}
-
-/**
- * Implement hook_uninstall().
- */
-function upload_uninstall() {
-  // Remove tables.
-  drupal_uninstall_schema('upload');
-}
-
-/**
  * Implement hook_schema().
  */
 function upload_schema() {
