コード例 #1
0
ファイル: processsubmissions.php プロジェクト: rpshaw/CDash
        $projectid = pdo_real_escape_numeric($projectid);
    }
    @($force = $_GET['force']);
}
if (!is_numeric($projectid)) {
    echo "projectid/argv[1] should be a number\n";
    echo "</pre>";
    add_log("projectid '" . $projectid . "' should be a number", "ProcessSubmission", LOG_ERR, $projectid);
    return;
}
// Catch any fatal errors during processing
//
register_shutdown_function('ProcessSubmissionsErrorHandler', $projectid);
echo "projectid='{$projectid}'\n";
echo "force='{$force}'\n";
if (AcquireProcessingLock($projectid, $force)) {
    echo "AcquireProcessingLock returned true\n";
    ResetApparentlyStalledSubmissions($projectid);
    echo "Done with ResetApparentlyStalledSubmissions\n";
    ProcessSubmissions($projectid);
    echo "Done with ProcessSubmissions\n";
    DeleteOldSubmissionRecords($projectid);
    echo "Done with DeleteOldSubmissionRecords\n";
    if (ReleaseProcessingLock($projectid)) {
        echo "ReleasedProcessingLock returned true\n";
    } else {
        echo "ReleasedProcessingLock returned false\n";
    }
} else {
    echo "AcquireProcessingLock returned false\n";
    echo "Another process is already processing or there was a locking error\n";
コード例 #2
0
ファイル: processsubmissions.php プロジェクト: kitware/cdash
    $pid = getmypid();
} else {
    // if pid was specified then this is a parallel request.
    $multi = true;
}
// Catch any fatal errors during processing
//
register_shutdown_function('ProcessSubmissionsErrorHandler', $projectid, $pid);
echo "projectid='{$projectid}'\n";
echo "pid='{$pid}'\n";
echo "force='{$force}'\n";
if ($multi) {
    // multi processing, so lock was acquired in do_submit.php
    $lockAcquired = true;
} else {
    $lockAcquired = AcquireProcessingLock($projectid, $force, $pid);
}
if ($lockAcquired) {
    echo "AcquireProcessingLock returned true\n";
    ResetApparentlyStalledSubmissions($projectid);
    echo "Done with ResetApparentlyStalledSubmissions\n";
    ProcessSubmissions($projectid, $pid, $multi);
    echo "Done with ProcessSubmissions\n";
    DeleteOldSubmissionRecords($projectid);
    echo "Done with DeleteOldSubmissionRecords\n";
    if (ReleaseProcessingLock($projectid, $pid, $multi)) {
        echo "ReleasedProcessingLock returned true\n";
    } else {
        echo "ReleasedProcessingLock returned false\n";
    }
} else {
コード例 #3
0
ファイル: do_submit.php プロジェクト: kitware/cdash
function trigger_process_submissions($projectid)
{
    global $CDASH_USE_HTTPS, $CDASH_ASYNC_WORKERS;
    $currentURI = get_server_URI(true);
    if ($CDASH_ASYNC_WORKERS > 1) {
        // Parallel processing.
        // Obtain the processing lock before firing off parallel workers.
        $mypid = getmypid();
        include 'include/submission_functions.php';
        if (AcquireProcessingLock($projectid, false, $mypid)) {
            $url = $currentURI . '/ajax/processsubmissions.php';
            $params = array('projectid' => $projectid, 'pid' => $mypid);
            for ($i = 0; $i < $CDASH_ASYNC_WORKERS; $i++) {
                curl_request_async($url, $params, 'GET');
            }
        }
    } else {
        // Serial processing.
        $request = $currentURI . '/ajax/processsubmissions.php?projectid=' . $projectid;
        curl_request($request);
    }
}