Index: l10n_community/l10n_community.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/l10n_community/Attic/l10n_community.install,v
retrieving revision 1.1.2.11.2.15.2.2
diff -u -p -r1.1.2.11.2.15.2.2 l10n_community.install
--- l10n_community/l10n_community.install	24 Feb 2010 10:04:10 -0000	1.1.2.11.2.15.2.2
+++ l10n_community/l10n_community.install	24 Feb 2010 10:30:42 -0000
@@ -349,13 +349,8 @@ function l10n_community_schema() {
     ),
     'primary key' => array('tid'),
     'indexes' => array(
-      'is_active' => array('is_active'),
-      'is_suggestion' => array('is_suggestion'),
-      'language' => array('language'),
-      'suggestion_active' => array('is_suggestion', 'is_active'),
-      'uid_entered' => array('uid_entered'),
-      'sid_language_suggestion' => array('sid', 'language', 'is_suggestion'),
-      'sid' => array('sid')
+      'is_suggestion_is_active_language' => array('is_suggestion', 'is_active', 'language'),
+      'sid_language_is_suggestion_is_active' => array('sid', 'language', 'is_suggestion', 'is_active')
     ),
   );
 
@@ -727,3 +722,22 @@ function l10n_community_update_6012() {
   $ret[] = update_sql('DELETE FROM {l10n_community_status_flag} WHERE has_suggestion = 0 AND has_translation = 0');
   return $ret;
 }
+
+/**
+ * Consolidate indexes.
+ */
+function l10n_community_update_6013() {
+  $ret = array();
+  // Drop all but the primary index of the table.
+  db_drop_index($ret, 'l10n_community_translation', 'is_active');
+  db_drop_index($ret, 'l10n_community_translation', 'is_suggestion');
+  db_drop_index($ret, 'l10n_community_translation', 'language');
+  db_drop_index($ret, 'l10n_community_translation', 'suggestion_active');
+  db_drop_index($ret, 'l10n_community_translation', 'uid_entered');
+  db_drop_index($ret, 'l10n_community_translation', 'sid_language_suggestion');
+  db_drop_index($ret, 'l10n_community_translation', 'sid');
+  // Add two specific indexes.
+  db_add_index($ret, 'l10n_community_translation', 'is_suggestion_is_active_language', array('is_suggestion', 'is_active', 'language'));
+  db_add_index($ret, 'l10n_community_translation', 'sid_language_is_suggestion_is_active', array('sid', 'language', 'is_suggestion', 'is_active'));
+  return $ret;
+}
