Make sure that CLI cron doesn't run for ever, but makes use of the next spawn
This commit is contained in:
parent
02ecd040e6
commit
e252967e83
1 changed files with 8 additions and 0 deletions
8
cron.php
8
cron.php
|
@ -131,6 +131,10 @@ try {
|
|||
// Work
|
||||
$jobList = \OC::$server->getJobList();
|
||||
|
||||
// We only ask for jobs for 14 minutes, because after 15 minutes the next
|
||||
// system cron task should spawn.
|
||||
$endTime = time() + 14 * 60;
|
||||
|
||||
$executedJobs = [];
|
||||
while ($job = $jobList->getNext()) {
|
||||
if (isset($executedJobs[$job->getId()])) {
|
||||
|
@ -144,6 +148,10 @@ try {
|
|||
$jobList->setLastJob($job);
|
||||
$executedJobs[$job->getId()] = true;
|
||||
unset($job);
|
||||
|
||||
if (time() > $endTime) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// unlock the file
|
||||
|
|
Loading…
Reference in a new issue