From: mjollnir_ Date: Fri, 19 Nov 2004 05:28:51 +0000 (+0000) Subject: Merged from MOODLE_14_STABLE: Indexes for scorm and version bump (honoring partial... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=7e0286af89af6b49b013c69f9cb326d533ca9474;p=moodle.git Merged from MOODLE_14_STABLE: Indexes for scorm and version bump (honoring partial freeze) --- diff --git a/mod/scorm/db/mysql.php b/mod/scorm/db/mysql.php index 640c9d8264..1afdebfbe9 100755 --- a/mod/scorm/db/mysql.php +++ b/mod/scorm/db/mysql.php @@ -26,6 +26,21 @@ function scorm_upgrade($oldversion) { table_column("scorm", "", "maxgrade", "FLOAT", "3", "", "0", "NOT NULL", "reference"); table_column("scorm", "", "grademethod", "TINYINT", "2", "", "0", "NOT NULL", "maxgrade"); } + + if ($oldversion < 2004111200) { + execute_sql("ALTER TABLE {$CFG->prefix}scorm DROP INDEX course;",false); + execute_sql("ALTER TABLE {$CFG->prefix}scorm_scoes DROP INDEX scorm;",false); + execute_sql("ALTER TABLE {$CFG->prefix}scorm_sco_users DROP INDEX scormid;",false); + execute_sql("ALTER TABLE {$CFG->prefix}scorm_sco_users DROP INDEX userid;",false); + execute_sql("ALTER TABLE {$CFG->prefix}scorm_sco_users DROP INDEX scoid;",false); + + modify_database('','ALTER TABLE prefix_scorm ADD INDEX course (course);'); + modify_database('','ALTER TABLE prefix_scorm_scoes ADD INDEX scorm (scorm);'); + modify_database('','ALTER TABLE prefix_scorm_sco_users ADD INDEX scormid (scormid);'); + modify_database('','ALTER TABLE prefix_scorm_sco_users ADD INDEX userid (userid);'); + modify_database('','ALTER TABLE prefix_scorm_sco_users ADD INDEX scoid (scoid);'); + } + return true; } diff --git a/mod/scorm/db/mysql.sql b/mod/scorm/db/mysql.sql index c2ff87444c..d93b1aa607 100755 --- a/mod/scorm/db/mysql.sql +++ b/mod/scorm/db/mysql.sql @@ -16,7 +16,8 @@ CREATE TABLE prefix_scorm ( popup varchar(255) NOT NULL default '', timemodified int(10) unsigned NOT NULL default '0', PRIMARY KEY (id), - UNIQUE KEY id (id) + UNIQUE KEY id (id), + KEY course (course) ) TYPE=MyISAM; CREATE TABLE prefix_scorm_scoes ( @@ -33,7 +34,8 @@ CREATE TABLE prefix_scorm_scoes ( next tinyint(1) unsigned NOT NULL default '0', previous tinyint(1) unsigned NOT NULL default '0', PRIMARY KEY (id), - UNIQUE KEY id (id) + UNIQUE KEY id (id), + KEY scorm (scorm) ) TYPE=MyISAM; CREATE TABLE prefix_scorm_sco_users ( @@ -48,7 +50,10 @@ CREATE TABLE prefix_scorm_sco_users ( cmi_core_session_time varchar(13) NOT NULL default '00:00:00', cmi_core_score_raw float(3) NOT NULL default '0', cmi_suspend_data longtext, - PRIMARY KEY (id) + PRIMARY KEY (id), + KEY userid (userid), + KEY scormid (scormid), + KEY scoid (scoid) ) TYPE=MyISAM; # diff --git a/mod/scorm/db/postgres7.php b/mod/scorm/db/postgres7.php index 8f594648f5..3635ac59e9 100755 --- a/mod/scorm/db/postgres7.php +++ b/mod/scorm/db/postgres7.php @@ -26,6 +26,21 @@ function scorm_upgrade($oldversion) { table_column("scorm", "", "maxgrade", "real", "3", "", "0", "NOT NULL", "reference"); table_column("scorm", "", "grademethod", "integer", "", "", "0", "NOT NULL", "maxgrade"); } + + if ($oldversion < 2004111200) { + execute_sql("DROP INDEX {$CFG->prefix}scorm_course_idx;",false); + execute_sql("DROP INDEX {$CFG->prefix}scorm_scoes_scorm_idx;",false); + execute_sql("DROP INDEX {$CFG->prefix}scorm_sco_users_userid_idx;",false); + execute_sql("DROP INDEX {$CFG->prefix}scorm_sco_users_scormid_idx;",false); + execute_sql("DROP INDEX {$CFG->prefix}scorm_sco_users_scoid_idx;",false); + + modify_database('','CREATE INDEX prefix_scorm_course_idx ON prefix_scorm (course);'); + modify_database('','CREATE INDEX prefix_scorm_scoes_scorm_idx ON prefix_scorm_scoes (scorm);'); + modify_database('','CREATE INDEX prefix_scorm_sco_users_userid_idx ON prefix_scorm_sco_users (userid);'); + modify_database('','CREATE INDEX prefix_scorm_sco_users_scormid_idx ON prefix_scorm_sco_users (scormid);'); + modify_database('','CREATE INDEX prefix_scorm_sco_users_scoid_idx ON prefix_scorm_sco_users (scoid);'); + } + return true; } diff --git a/mod/scorm/db/postgres7.sql b/mod/scorm/db/postgres7.sql index 73b4cc02ff..1a4bf2cf52 100755 --- a/mod/scorm/db/postgres7.sql +++ b/mod/scorm/db/postgres7.sql @@ -17,6 +17,8 @@ CREATE TABLE prefix_scorm ( timemodified integer NOT NULL default '0' ); +CREATE INDEX prefix_scorm_course_idx ON prefix_scorm (course); + CREATE TABLE prefix_scorm_scoes ( id SERIAL PRIMARY KEY, scorm integer NOT NULL default '0', @@ -32,6 +34,8 @@ CREATE TABLE prefix_scorm_scoes ( previous integer NOT NULL default '0' ); +CREATE INDEX prefix_scorm_scoes_scorm_idx ON prefix_scorm_scoes (scorm); + CREATE TABLE prefix_scorm_sco_users ( id SERIAL PRIMARY KEY, userid integer NOT NULL default '0', @@ -46,6 +50,10 @@ CREATE TABLE prefix_scorm_sco_users ( cmi_suspend_data text NOT NULL default '' ); +CREATE INDEX prefix_scorm_sco_users_userid_idx ON prefix_scorm_sco_users (userid); +CREATE INDEX prefix_scorm_sco_users_scormid_idx ON prefix_scorm_sco_users (scormid); +CREATE INDEX prefix_scorm_sco_users_scoid_idx ON prefix_scorm_sco_users (scoid); + # # Dumping data for table `log_display` # diff --git a/mod/scorm/version.php b/mod/scorm/version.php index f2eee4bae0..24d464790d 100755 --- a/mod/scorm/version.php +++ b/mod/scorm/version.php @@ -5,7 +5,7 @@ /// This fragment is called by moodle_needs_upgrading() and /admin/index.php ///////////////////////////////////////////////////////////////////////////////// -$module->version = 2004110200; // The (date) version of this module +$module->version = 2004111200; // The (date) version of this module $module->requires = 2004110200; // The version of Moodle that is required $module->cron = 0; // How often should cron check this module (seconds)?