HomePhabricator

Add a missing key on DrydockLease

Description

Add a missing key on DrydockLease

Summary: Depends on D18734. See PHI176. We run this query on the main Drydock lease web UI, among other places. There is currently no status key which can satisfy it.

Test Plan:
Viewed Drydock lease page to get the query.

Ran explain SELECT * FROM `drydock_lease` WHERE (status IN ('pending', 'acquired', 'active')) ORDER BY `id` DESC LIMIT 101; before and after the change.

I don't have a ton of leases locally so the un-key'd EXPLAIN isn't that bad, but still shows that we're getting a better key. Before:

mysql> explain SELECT * FROM `drydock_lease` WHERE (status IN ('pending', 'acquired', 'active')) ORDER BY `id` DESC LIMIT 101;
+----+-------------+---------------+-------+---------------+---------+---------+------+------+-------------+
| id | select_type | table         | type  | possible_keys | key     | key_len | ref  | rows | Extra       |
+----+-------------+---------------+-------+---------------+---------+---------+------+------+-------------+
|  1 | SIMPLE      | drydock_lease | index | NULL          | PRIMARY | 4       | NULL |  101 | Using where |
+----+-------------+---------------+-------+---------------+---------+---------+------+------+-------------+
1 row in set (0.00 sec)

After:

mysql> explain SELECT * FROM `drydock_lease` WHERE (status IN ('pending', 'acquired', 'active')) ORDER BY `id` DESC LIMIT 101;
+----+-------------+---------------+-------+---------------+------------+---------+------+------+---------------------------------------+
| id | select_type | table         | type  | possible_keys | key        | key_len | ref  | rows | Extra                                 |
+----+-------------+---------------+-------+---------------+------------+---------+------+------+---------------------------------------+
|  1 | SIMPLE      | drydock_lease | range | key_status    | key_status | 130     | NULL |    5 | Using index condition; Using filesort |
+----+-------------+---------------+-------+---------------+------------+---------+------+------+---------------------------------------+
1 row in set (0.00 sec)

Reviewers: amckinley

Reviewed By: amckinley

Subscribers: PHID-OPKG-gm6ozazyms6q6i22gyam

Differential Revision: https://secure.phabricator.com/D18735

Details

Provenance
epriestleyAuthored on Oct 26 2017, 8:17 PM
epriestleyPushed on Oct 27 2017, 1:20 AM
Reviewer
amckinley
Differential Revision
D18735: Add a missing key on DrydockLease
Parents
rPb04d9fdc0ba8: Add a missing key to PhabricatorFile for destroying Files
Branches
Unknown
Tags
Unknown
Build Status
Buildable 18753
Build 25269: Run Core Tests