diff --git a/pift.cron.inc b/pift.cron.inc
index 3121218..0de0c69 100644
--- a/pift.cron.inc
+++ b/pift.cron.inc
@@ -23,40 +23,38 @@ function pift_cron_retest() {
 
   // Only attempt query if both values are not empty.
   if ($api_versions && $sids) {
-    $retest_time = time() - PIFT_RETEST;
-
-    // Loop over 'ON' clause to remove an 'OR' which should be more efficient.
-    foreach (array('u.nid = pi.nid', 'cu.nid = pi.nid') as $clause) {
-      db_query("UPDATE {pift_test}
-                SET status = %d
-                WHERE type = %d
-                AND id IN (
-                  SELECT f.fid
-                  FROM {files} f
-                  LEFT JOIN {upload} u
-                    ON f.fid = u.fid
-                  LEFT JOIN {comment_upload} cu
-                    ON f.fid = cu.fid
-
-                  JOIN {project_issues} pi
-                    ON " . $clause . "
-                  JOIN {pift_project} p
-                    ON pi.pid = p.pid
-                  JOIN {project_release_nodes} r
-                    ON pi.rid = r.nid
-
-                  JOIN {node} n
-                    ON r.nid = n.nid
-                  JOIN {term_node} t
-                    ON (n.vid = t.vid AND t.tid IN (" . db_placeholders($api_versions, 'int') . "))
-
-                  WHERE pi.sid IN (" . db_placeholders($sids, 'int') . ")
-                )
-                AND status > %d
-                AND last_tested < %d",
-                array_merge(array(PIFT_STATUS_QUEUE, PIFT_TYPE_FILE), $api_versions, $sids,
-                            array(PIFT_STATUS_SENT, $retest_time)));
+    //$retest_time = time() - PIFT_RETEST;
+    $retest_time = time();
+
+    drupal_set_message(print_r($api_versions, TRUE));
+    drupal_set_message(print_r($sids, TRUE));
+    drupal_set_message(time());
+
+    $result = db_query("SELECT test_id FROM {pift_test}
+        WHERE id IN (
+          SELECT tmp.id FROM (
+            SELECT MAX(pt.id) as id
+            FROM {pift_test} pt
+            JOIN {project_issues} pi
+              ON (pt.nid = pi.nid AND pi.sid IN (" . db_placeholders($sids, 'int') . "))
+            JOIN {project_release_nodes} prn
+              ON pi.rid = prn.nid
+            JOIN {node} n
+              ON prn.nid = n.nid
+            JOIN {term_node} t
+              ON (n.vid = t.vid AND t.tid IN (" . db_placeholders($api_versions, 'int') . "))
+            WHERE pt.type = %d
+            AND pt.status > %d
+            AND pt.last_tested < %d
+            GROUP BY pt.nid
+          ) AS tmp
+        )",
+        array_merge($sids, $api_versions, (array) PIFT_TEST_FILE, (array) PIFT_STATUS_SENT, (array) $retest_time));
+
+    while ($data = db_fetch_array($result)) {
+      $retest_ids[] = $data['test_id'];
     }
+    drupal_set_message("Retest IDs: \n" . print_r($retest_ids, TRUE));
   }
 }
 
