diff --git a/database/database.mysql b/database/database.mysql index a7a9ee06181fa059b66d622cf050898cd9a94de0..1508921df74a3e703757498797b2b90f4fa47407 100644 --- a/database/database.mysql +++ b/database/database.mysql @@ -482,7 +482,8 @@ CREATE TABLE node_revisions ( log longtext NOT NULL default '', timestamp int(11) NOT NULL default '0', format int(4) NOT NULL default '0', - PRIMARY KEY (nid,vid), + PRIMARY KEY (vid), + KEY nid (nid), KEY uid (uid) ) TYPE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 */ ; diff --git a/database/database.pgsql b/database/database.pgsql index 839b771c047741574a1f6a3c209b1426b63f5958..a8339394535e8cba34b6598b602a87bb096ac814 100644 --- a/database/database.pgsql +++ b/database/database.pgsql @@ -458,8 +458,9 @@ CREATE TABLE node_revisions ( log text NOT NULL default '', timestamp integer NOT NULL default '0', format int NOT NULL default '0', - PRIMARY KEY (nid,vid) + PRIMARY KEY (vid) ); +CREATE INDEX node_revisions_nid_idx ON node_revisions(nid); CREATE INDEX node_revisions_uid_idx ON node_revisions(uid); CREATE SEQUENCE node_revisions_vid_seq INCREMENT 1 START 1; diff --git a/database/updates.inc b/database/updates.inc index 23fbf1ab0cff7e780429eb64633a3de20ce0b5b4..51428d8dbbef8290fe80dfce9a1493f764e1bb0a 100644 --- a/database/updates.inc +++ b/database/updates.inc @@ -755,10 +755,11 @@ function system_update_146() { log text NOT NULL default '', timestamp integer NOT NULL default '0', format int NOT NULL default '0', - PRIMARY KEY (nid,vid))"); + PRIMARY KEY (vid))"); $ret[] = update_sql("INSERT INTO {node_revisions} (nid, vid, uid, title, body, teaser, timestamp, format) SELECT nid, nid AS vid, uid, title, body, teaser, changed AS timestamp, format FROM {node}"); + $ret[] = update_sql('CREATE INDEX {node_revisions}_nid_idx ON {node_revisions}(nid)'); $ret[] = update_sql('CREATE INDEX {node_revisions}_uid_idx ON {node_revisions}(uid)'); $vid = db_next_id('{node}_nid'); $ret[] = update_sql("CREATE SEQUENCE {node_revisions}_vid_seq INCREMENT 1 START $vid");