diff --git a/mutalyzer/Db.py b/mutalyzer/Db.py index f8a3de0432fb101c92ec3a28bcd5b2522f5aa54e..6a40eba8e3eeb5c8a463ff8230bfae55a476cd19 100644 --- a/mutalyzer/Db.py +++ b/mutalyzer/Db.py @@ -1491,12 +1491,19 @@ class Batch(Db) : @rtype: triple """ + # To optimize this query, make sure to have two indices on the + # table: + # - UNIQUE KEY (QueueID) + # - KEY (JobID, QueueID) statement = """ SELECT QueueID, Input, Flags - FROM BatchQueue - WHERE JobID = %s - ORDER BY QueueID - LIMIT 1; + FROM BatchQueue + WHERE QueueID = ( + SELECT QueueID + FROM BatchQueue + GROUP BY JobID + HAVING JobID = %s + ); """, jobID results = self.query(statement)