Merge pull request #8641 from appwrite/fix-scheduler-across-projects

Fix: cross-project scheduler stability
This commit is contained in:
Christy Jacob
2024-09-10 14:23:26 +04:00
committed by GitHub
3 changed files with 7 additions and 6 deletions
+4 -3
View File
@@ -74,6 +74,7 @@ abstract class ScheduleBase extends Action
);
return [
'$internalId' => $schedule->getInternalId(),
'$id' => $schedule->getId(),
'resourceId' => $schedule->getAttribute('resourceId'),
'schedule' => $schedule->getAttribute('schedule'),
@@ -110,7 +111,7 @@ abstract class ScheduleBase extends Action
foreach ($results as $document) {
try {
$this->schedules[$document['resourceId']] = $getSchedule($document);
$this->schedules[$document->getInternalId()] = $getSchedule($document);
} catch (\Throwable $th) {
$collectionId = match ($document->getAttribute('resourceType')) {
'function' => 'functions',
@@ -172,10 +173,10 @@ abstract class ScheduleBase extends Action
if (!$document['active']) {
Console::info("Removing: {$document['resourceId']}");
unset($this->schedules[$document['resourceId']]);
unset($this->schedules[$document->getInternalId()]);
} elseif ($new !== $org) {
Console::info("Updating: {$document['resourceId']}");
$this->schedules[$document['resourceId']] = $getSchedule($document);
$this->schedules[$document->getInternalId()] = $getSchedule($document);
}
}
@@ -36,7 +36,7 @@ class ScheduleExecutions extends ScheduleBase
$schedule['$id'],
);
unset($this->schedules[$schedule['resourceId']]);
unset($this->schedules[$schedule['$internalId']]);
continue;
}
@@ -70,7 +70,7 @@ class ScheduleExecutions extends ScheduleBase
$schedule['$id'],
);
unset($this->schedules[$schedule['resourceId']]);
unset($this->schedules[$schedule['$internalId']]);
}
$queue->reclaim();
@@ -53,7 +53,7 @@ class ScheduleMessages extends ScheduleBase
$queue->reclaim();
unset($this->schedules[$schedule['resourceId']]);
unset($this->schedules[$schedule['$internalId']]);
});
}
}