| @@ -26,8 +26,11 @@ | ||
| 26 | 26 | `created_at` TIMESTAMP NULL, |
| 27 | 27 | `updated_at` TIMESTAMP NULL, |
| 28 | 28 | INDEX `status` (`status`), |
| 29 | 29 | INDEX `space_id_user_id` (`space_id`, `user_id`), |
| 30 | + INDEX `user_id_status` (`user_id`, `status`), | |
| 31 | + INDEX `space_status_created` (`space_id`, `status`, `created_at`), | |
| 32 | + INDEX `space_role_created` (`space_id`, `role`, `created_at`), | |
| 30 | 33 | INDEX `role` (`role`) |
| 31 | 34 | ) $charsetCollate;"; |
| 32 | 35 | dbDelta($sql); |
| 33 | 36 | } else { |
| @@ -53,8 +56,20 @@ | ||
| 53 | 56 | |
| 54 | 57 | // now check index for role |
| 55 | 58 | if (!in_array('role', $index_names)) { |
| 56 | 59 | $wpdb->query("ALTER TABLE $table ADD INDEX `role` (`role`)"); |
| 60 | + } | |
| 61 | + | |
| 62 | + if (!in_array('user_id_status', $index_names)) { | |
| 63 | + $wpdb->query("ALTER TABLE $table ADD INDEX `user_id_status` (`user_id`, `status`)"); | |
| 64 | + } | |
| 65 | + | |
| 66 | + if (!in_array('space_status_created', $index_names)) { | |
| 67 | + $wpdb->query("ALTER TABLE $table ADD INDEX `space_status_created` (`space_id`, `status`, `created_at`)"); | |
| 68 | + } | |
| 69 | + | |
| 70 | + if (!in_array('space_role_created', $index_names)) { | |
| 71 | + $wpdb->query("ALTER TABLE $table ADD INDEX `space_role_created` (`space_id`, `role`, `created_at`)"); | |
| 57 | 72 | } |
| 58 | 73 | |
| 59 | 74 | } |
| 60 | 75 | } |