diff --git a/modules/system/system.install b/modules/system/system.install index 6d355a244f1..06b29a83649 100644 --- a/modules/system/system.install +++ b/modules/system/system.install @@ -528,6 +528,7 @@ function system_install() { data longtext, PRIMARY KEY (uid), UNIQUE KEY name (name), + KEY created (created), KEY access (access) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); @@ -995,6 +996,7 @@ function system_install() { UNIQUE (name) )"); db_query("CREATE INDEX {users}_access_idx ON {users} (access)"); + db_query("CREATE INDEX {users}_created_idx ON {users} (created)"); db_query("CREATE TABLE {users_roles} ( uid int_unsigned NOT NULL default '0', @@ -3485,6 +3487,35 @@ function system_update_1021() { */ +/** + * @defgroup updates-5.x-extra Extra system updates for 5.x + * @{ + */ + +/** + * Add index on users created column. + */ +function system_update_1022() { + $ret = array(); + switch ($GLOBALS['db_type']) { + case 'mysql': + case 'mysqli': + $ret[] = update_sql('ALTER TABLE {users} ADD KEY created (created)'); + break; + + case 'pgsql': + $ret[] = update_sql("CREATE INDEX {users}_created_idx ON {users} (created)"); + break; + } + // Also appears as system_update_2004(). Ensure we don't update twice. + variable_set('system_update_1022', TRUE); + return $ret; +} + +/** + * @} End of "defgroup updates-5.x-extra" + */ + /** * @defgroup updates-5.0-to-x.x System updates from 5.0 to x.x * @{