update_create_cache_tables

Versions
5
update_create_cache_tables()

Create tables for the split cache.

This is part of the Drupal 4.7.x to 5.x migration.

Code

./update.php, line 692

<?php
function update_create_cache_tables() {

  // If cache_filter exists, update is not necessary
  if (db_table_exists('cache_filter')) {
    return;
  }

  $ret = array();
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      $ret[] = update_sql("CREATE TABLE {cache_filter} (
        cid varchar(255) NOT NULL default '',
        data longblob,
        expire int NOT NULL default '0',
        created int NOT NULL default '0',
        headers text,
        PRIMARY KEY (cid),
        INDEX expire (expire)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
      $ret[] = update_sql("CREATE TABLE {cache_menu} (
        cid varchar(255) NOT NULL default '',
        data longblob,
        expire int NOT NULL default '0',
        created int NOT NULL default '0',
        headers text,
        PRIMARY KEY (cid),
        INDEX expire (expire)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
      $ret[] = update_sql("CREATE TABLE {cache_page} (
        cid varchar(255) BINARY NOT NULL default '',
        data longblob,
        expire int NOT NULL default '0',
         created int NOT NULL default '0',
        headers text,
        PRIMARY KEY (cid),
        INDEX expire (expire)
      ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
      break;
    case 'pgsql':
      $ret[] = update_sql("CREATE TABLE {cache_filter} (
        cid varchar(255) NOT NULL default '',
        data bytea,
        expire int NOT NULL default '0',
        created int NOT NULL default '0',
        headers text,
        PRIMARY KEY (cid)
     )");
     $ret[] = update_sql("CREATE TABLE {cache_menu} (
       cid varchar(255) NOT NULL default '',
       data bytea,
       expire int NOT NULL default '0',
       created int NOT NULL default '0',
       headers text,
       PRIMARY KEY (cid)
     )");
     $ret[] = update_sql("CREATE TABLE {cache_page} (
       cid varchar(255) NOT NULL default '',
       data bytea,
       expire int NOT NULL default '0',
       created int NOT NULL default '0',
       headers text,
       PRIMARY KEY (cid)
     )");
     $ret[] = update_sql("CREATE INDEX {cache_filter}_expire_idx ON {cache_filter} (expire)");
     $ret[] = update_sql("CREATE INDEX {cache_menu}_expire_idx ON {cache_menu} (expire)");
     $ret[] = update_sql("CREATE INDEX {cache_page}_expire_idx ON {cache_page} (expire)");
     break;
  }
  return $ret;
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.