[ 'addField', 'change_tag', 'ct_tag_id', 'patch-change_tag-tag_id.sql' ],
[ 'addIndex', 'archive', 'ar_revid_uniq', 'patch-archive-ar_rev_id-unique.sql' ],
[ 'populateContentTables' ],
+ [ 'addIndex', 'logging', 'log_type_action', 'patch-logging-log-type-action-index.sql' ],
+ [ 'dropIndex', 'logging', 'type_action', 'patch-logging-drop-type-action-index.sql' ],
];
}
[ 'addTable', 'user_former_groups', 'patch-user_former_groups.sql' ],
// 1.19
- [ 'addIndex', 'logging', 'type_action', 'patch-logging-type-action-index.sql' ],
[ 'addField', 'revision', 'rev_sha1', 'patch-rev_sha1.sql' ],
[ 'doMigrateUserOptions' ],
[ 'dropField', 'user', 'user_options', 'patch-drop-user_options.sql' ],
[ 'addField', 'change_tag', 'ct_tag_id', 'patch-change_tag-tag_id.sql' ],
[ 'addIndex', 'archive', 'ar_revid_uniq', 'patch-archive-ar_rev_id-unique.sql' ],
[ 'populateContentTables' ],
+ [ 'addIndex', 'logging', 'log_type_action', 'patch-logging-log-type-action-index.sql' ],
+ [ 'dropIndex', 'logging', 'type_action', 'patch-logging-drop-type-action-index.sql' ],
];
}
[ 'addPgIndex', 'archive', 'ar_revid_uniq', '(ar_rev_id)', 'unique' ],
[ 'dropPgIndex', 'archive', 'ar_revid' ], // Probably doesn't exist, but do it anyway.
[ 'populateContentTables' ],
+ [ 'addPgIndex', 'logging', 'log_type_action', '( log_type, log_action, log_timestamp )' ],
];
}
[ 'addTable', 'user_former_groups', 'patch-user_former_groups.sql' ],
// 1.19
- [ 'addIndex', 'logging', 'type_action', 'patch-logging-type-action-index.sql' ],
[ 'doMigrateUserOptions' ],
[ 'dropField', 'user', 'user_options', 'patch-drop-user_options.sql' ],
[ 'addField', 'revision', 'rev_sha1', 'patch-rev_sha1.sql' ],
[ 'addField', 'change_tag', 'ct_tag_id', 'patch-change_tag-tag_id.sql' ],
[ 'addIndex', 'archive', 'ar_revid_uniq', 'patch-archive-ar_rev_id-unique.sql' ],
[ 'populateContentTables' ],
+ [ 'addIndex', 'logging', 'log_type_action', 'patch-logging-log-type-action-index.sql' ],
+ [ 'dropIndex', 'logging', 'type_action', 'patch-logging-drop-type-action-index.sql' ],
];
}
--- /dev/null
+DROP INDEX /*i*/type_action ON /*_*/logging;
\ No newline at end of file
--- /dev/null
+CREATE INDEX /*i*/log_type_action ON /*_*/logging(log_type, log_action, log_timestamp);
+++ /dev/null
-CREATE INDEX /*i*/type_action ON /*_*/logging(log_type, log_action, log_timestamp);
CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp);
CREATE INDEX /*i*/log_user_type_time ON /*_*/logging (log_user, log_type, log_timestamp);
CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp);
-CREATE INDEX /*i*/type_action ON /*_*/logging (log_type, log_action, log_timestamp);
+CREATE INDEX /*i*/log_type_action ON /*_*/logging (log_type, log_action, log_timestamp);
CREATE INDEX /*i*/log_user_text_type_time ON /*_*/logging (log_user_text, log_type, log_timestamp);
CREATE INDEX /*i*/log_user_text_time ON /*_*/logging (log_user_text, log_timestamp);
CREATE INDEX /*i*/actor_time ON /*_*/logging (log_actor, log_timestamp);
CREATE INDEX logging_user_text_type_time ON logging (log_user_text, log_type, log_timestamp);
CREATE INDEX logging_user_text_time ON logging (log_user_text, log_timestamp);
CREATE INDEX logging_actor_time ON logging (log_actor, log_timestamp);
+CREATE INDEX logging_type_action ON logging (log_type, log_action, log_timestamp);
CREATE TABLE log_search (
ls_field TEXT NOT NULL,
CREATE INDEX /*i*/log_user_type_time ON /*_*/logging (log_user, log_type, log_timestamp);
CREATE INDEX /*i*/log_actor_type_time ON /*_*/logging (log_actor, log_type, log_timestamp);
CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp);
-CREATE INDEX /*i*/type_action ON /*_*/logging (log_type, log_action, log_timestamp);
+CREATE INDEX /*i*/log_type_action ON /*_*/logging (log_type, log_action, log_timestamp);
CREATE INDEX /*i*/log_user_text_type_time ON /*_*/logging (log_user_text, log_type, log_timestamp);
CREATE INDEX /*i*/log_user_text_time ON /*_*/logging (log_user_text, log_timestamp);
CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp);
-- Special:Log action filter
-CREATE INDEX /*i*/type_action ON /*_*/logging (log_type, log_action, log_timestamp);
+CREATE INDEX /*i*/log_type_action ON /*_*/logging (log_type, log_action, log_timestamp);
-- Special:Log filter by type and anonymous performer
CREATE INDEX /*i*/log_user_text_type_time ON /*_*/logging (log_user_text, log_type, log_timestamp);