예제 #1
0
function DeleteOldSubmissionRecords($projectid)
{
    global $CDASH_ASYNC_EXPIRATION_TIME;
    $delete_time = gmdate(FMT_DATETIMESTD, time() - $CDASH_ASYNC_EXPIRATION_TIME);
    $ids = pdo_all_rows_query("SELECT id FROM submission WHERE " . "(status=2 OR status=3 OR status=4 OR status=5) AND " . "projectid='{$projectid}' AND finished<'{$delete_time}' AND " . "finished!='1980-01-01 00:00:00'");
    $count = count($ids);
    if (0 == $count) {
        // Nothing to delete!
        return;
    }
    $idset = "(";
    foreach ($ids as $id_row) {
        $id = $id_row["id"];
        $idset .= "'{$id}', ";
    }
    // Avoid conditional ", " emission in the loop. OK to repeat an
    // element in this DELETE IN type of query:
    $idset .= "'" . $ids[0]["id"] . "')";
    pdo_delete_query("DELETE FROM submission WHERE id IN " . $idset);
    pdo_delete_query("DELETE FROM client_jobschedule2submission WHERE submissionid IN " . $idset);
    pdo_delete_query("DELETE FROM submission2ip WHERE submissionid IN " . $idset);
}
예제 #2
0
파일: feed.php 프로젝트: kitware/cdash
 /** Delete the old feeds */
 public function DeleteOld($projectid, $days)
 {
     $secondsinday = 86400;
     // == 3600*24;
     $olddate_utc = gmdate(FMT_DATETIMESTD, time() - $days * $secondsinday);
     pdo_delete_query("DELETE FROM feed WHERE projectid='{$projectid}' AND date<'{$olddate_utc}'");
 }