From: moodler Date: Sun, 27 Apr 2003 02:58:26 +0000 (+0000) Subject: Using multiple indexes for slightly increased performance X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=f9ce68ee7ff91225ce6a4ec0418498deeb4c9cb2;p=moodle.git Using multiple indexes for slightly increased performance --- diff --git a/lib/db/mysql.php b/lib/db/mysql.php index 834a793c0d..d5573066ce 100644 --- a/lib/db/mysql.php +++ b/lib/db/mysql.php @@ -348,9 +348,19 @@ function main_upgrade($oldversion=0) { } if ($oldversion < 2003042600) { - /// Some more indexes - we need al the help we can get on the logs - execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX(module) "); - execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX(action) "); + /// Some more indexes - we need all the help we can get on the logs + //execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX(module) "); + //execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX(action) "); + } + + if ($oldversion < 2003042700) { + /// Changing to multiple indexes + execute_sql(" ALTER TABLE `{$CFG->prefix}log` DROP INDEX module ", false); + execute_sql(" ALTER TABLE `{$CFG->prefix}log` DROP INDEX action ", false); + execute_sql(" ALTER TABLE `{$CFG->prefix}log` DROP INDEX course ", false); + execute_sql(" ALTER TABLE `{$CFG->prefix}log` DROP INDEX userid ", false); + execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX coursemoduleaction (course,module,action) "); + execute_sql(" ALTER TABLE `{$CFG->prefix}log` ADD INDEX courseuserid (course,userid) "); } return $result; diff --git a/lib/db/mysql.sql b/lib/db/mysql.sql index f7a5e4ba01..06f1434d69 100644 --- a/lib/db/mysql.sql +++ b/lib/db/mysql.sql @@ -112,10 +112,8 @@ CREATE TABLE `prefix_log` ( `url` varchar(100) NOT NULL default '', `info` varchar(255) NOT NULL default '', PRIMARY KEY (`id`), - KEY `course` (`course`), - KEY `userid` (`userid`), - KEY `module` (`module`), - KEY `action` (`action`) + KEY `coursemoduleaction` (course,module,action), + KEY `courseuserid` (course,userid) ) TYPE=MyISAM COMMENT='Every action is logged as far as possible.'; # -------------------------------------------------------- diff --git a/version.php b/version.php index 754883c33b..06a6e187bc 100644 --- a/version.php +++ b/version.php @@ -5,7 +5,7 @@ // database to determine whether upgrades should // be performed (see lib/db/*.php) -$version = 2003042600; // The current version is a date (YYYYMMDDXX) +$version = 2003042700; // The current version is a date (YYYYMMDDXX) $release = "1.0.9 development"; // User-friendly version number