MDL-69106 assignfeedback_editpdf: Keep files in conversion queue

In some circumstances, a submission waiting to be converted needs to persist
in the conversion queue so that it can be polled on subsequent cron runs.
This commit is contained in:
Cameron Ball 2020-06-30 10:12:33 +08:00
parent c11e2517a7
commit 548c44c89c

View File

@ -98,6 +98,7 @@ class convert_submissions extends scheduled_task {
}
mtrace('Convert ' . count($users) . ' submission attempt(s) for assignment ' . $assignmentid);
$conversionrequirespolling = false;
foreach ($users as $userid) {
try {
@ -107,6 +108,7 @@ class convert_submissions extends scheduled_task {
case combined_document::STATUS_READY_PARTIAL:
case combined_document::STATUS_PENDING_INPUT:
// The document has not been converted yet or is somehow still ready.
$conversionrequirespolling = true;
continue 2;
}
document_services::get_page_images_for_attempt(
@ -127,7 +129,9 @@ class convert_submissions extends scheduled_task {
}
// Remove from queue.
$DB->delete_records('assignfeedback_editpdf_queue', array('id' => $record->id));
if (!$conversionrequirespolling) {
$DB->delete_records('assignfeedback_editpdf_queue', array('id' => $record->id));
}
}
}