summaryrefslogtreecommitdiff
path: root/database/updates.inc
diff options
context:
space:
mode:
authorSteven Wittens <steven@10.no-reply.drupal.org>2005-10-18 14:41:27 +0000
committerSteven Wittens <steven@10.no-reply.drupal.org>2005-10-18 14:41:27 +0000
commit909d6928acb47cb9b50740e589b5e7447353e19c (patch)
tree6662a983847628472dbd1140d20a9b1e30311d0d /database/updates.inc
parent782d5c98c9b37f1d22152af53c6b0604674c38c8 (diff)
downloadbrdo-909d6928acb47cb9b50740e589b5e7447353e19c.tar.gz
brdo-909d6928acb47cb9b50740e589b5e7447353e19c.tar.bz2
- #28159: Advanced search features (hello from DrupalCon)
Presentation about it: http://www.acko.net/files/drupal-search-slim.pdf
Diffstat (limited to 'database/updates.inc')
-rw-r--r--database/updates.inc75
1 files changed, 74 insertions, 1 deletions
diff --git a/database/updates.inc b/database/updates.inc
index 988cb3a6f..2c2c57dea 100644
--- a/database/updates.inc
+++ b/database/updates.inc
@@ -66,7 +66,8 @@ $sql_updates = array(
"2005-08-25" => "update_146",
"2005-09-07" => "update_147",
"2005-09-18" => "update_148",
- "2005-09-27" => "update_149"
+ "2005-09-27" => "update_149",
+ "2005-10-15" => "update_150"
);
function update_110() {
@@ -846,6 +847,78 @@ function update_149() {
return $ret;
}
+function update_150() {
+ $ret = array();
+
+ $ret[] = update_sql("DELETE FROM {variable} WHERE name = 'node_cron_last'");
+ $ret[] = update_sql("DELETE FROM {variable} WHERE name = 'minimum_word_size'");
+ $ret[] = update_sql("DELETE FROM {variable} WHERE name = 'remove_short'");
+
+ $ret[] = update_sql("DELETE FROM {node_counter} WHERE nid = 0");
+
+ $ret[] = update_sql('DROP TABLE {search_index}');
+ $ret[] = update_sql('DROP TABLE {search_total}');
+
+ switch ($GLOBALS['db_type']) {
+ case 'mysqli':
+ case 'mysql':
+ $ret[] = update_sql("CREATE TABLE {search_dataset} (
+ sid int(10) unsigned NOT NULL default '0',
+ type varchar(16) default NULL,
+ data longtext NOT NULL,
+ KEY sid_type (sid, type)
+ )");
+
+ $ret[] = update_sql("CREATE TABLE {search_index} (
+ word varchar(50) NOT NULL default '',
+ sid int(10) unsigned NOT NULL default '0',
+ type varchar(16) default NULL,
+ fromsid int(10) unsigned NOT NULL default '0',
+ fromtype varchar(16) default NULL,
+ score float default NULL,
+ KEY sid_type (sid, type),
+ KEY from_sid_type (fromsid, fromtype),
+ KEY word (word)
+ )");
+
+ $ret[] = update_sql("CREATE TABLE {search_total} (
+ word varchar(50) NOT NULL default '',
+ count float default NULL,
+ PRIMARY KEY word (word)
+ )");
+ break;
+ case 'pgsql':
+ $ret[] = update_sql("CREATE TABLE {search_dataset} (
+ sid integer NOT NULL default '0',
+ type varchar(16) default NULL,
+ data text NOT NULL default '',
+ KEY sid_type (sid, type)
+ )");
+
+ $ret[] = update_sql("CREATE TABLE {search_index} (
+ word varchar(50) NOT NULL default '',
+ sid integer NOT NULL default '0',
+ type varchar(16) default NULL,
+ fromsid integer NOT NULL default '0',
+ fromtype varchar(16) default NULL,
+ score float default NULL
+ )");
+ $ret[] = update_sql("CREATE INDEX search_index_sid_type_idx ON {search_index}(sid, type)");
+ $ret[] = update_sql("CREATE INDEX search_index_from_sid_type_idx ON {search_index}(fromsid, fromtype)");
+ $ret[] = update_sql("CREATE INDEX search_index_word_idx ON {search_index}(word)");
+
+ $ret[] = update_sql("CREATE TABLE {search_total} (
+ word varchar(50) NOT NULL default '',
+ count float default NULL
+ )");
+ $ret[] = update_sql("CREATE INDEX search_total_word_idx ON {search_total}(word)");
+ break;
+ default:
+ break;
+ }
+ return $ret;
+}
+
function update_sql($sql) {
$edit = $_POST["edit"];
$result = db_query($sql);