original_string: public static function adhoc_task_failed(adhoc_task $task) {
          global $DB;
          $delay = $task->get_fail_delay();
  
          // Reschedule task with exponential fall off for failing tasks.
          if (empty($delay)) {
              $delay = 60;
          } else {
              $delay *= 2;
          }
  
          // Max of 24 hour delay.
          if ($delay > 86400) {
              $delay = 86400;
          }
  
          $classname = self::get_canonical_class_name($task);
  
          $task->set_next_run_time(time() + $delay);
          $task->set_fail_delay($delay);
          $record = self::record_from_adhoc_task($task);
          $DB->update_record('task_adhoc', $record);
  
          if ($task->is_blocking()) {
              $task->get_cron_lock()->release();
          }
          $task->get_lock()->release();
  
          // Finalise the log output.
          logmanager::finalise_log(true);
      }
code: public static function adhoc_task_failed(adhoc_task $task) {
          global $DB;
          $delay = $task->get_fail_delay();
  
          // Reschedule task with exponential fall off for failing tasks.
          if (empty($delay)) {
              $delay = 60;
          } else {
              $delay *= 2;
          }
  
          // Max of 24 hour delay.
          if ($delay > 86400) {
              $delay = 86400;
          }
  
          $classname = self::get_canonical_class_name($task);
  
          $task->set_next_run_time(time() + $delay);
          $task->set_fail_delay($delay);
          $record = self::record_from_adhoc_task($task);
          $DB->update_record('task_adhoc', $record);
  
          if ($task->is_blocking()) {
              $task->get_cron_lock()->release();
          }
          $task->get_lock()->release();
  
          // Finalise the log output.
          logmanager::finalise_log(true);
      }
code_tokens: public static function adhoc_task_failed ( adhoc_task $ task ) { global $ DB ; $ delay = $ task -> get_fail_delay ( ) ; // Reschedule task with exponential fall off for failing tasks. if ( empty ( $ delay ) ) { $ delay = 60 ; } else { $ delay *= 2 ; } // Max of 24 hour delay. if ( $ delay > 86400 ) { $ delay = 86400 ; } $ classname = self :: get_canonical_class_name ( $ task ) ; $ task -> set_next_run_time ( time ( ) + $ delay ) ; $ task -> set_fail_delay ( $ delay ) ; $ record = self :: record_from_adhoc_task ( $ task ) ; $ DB -> update_record ( 'task_adhoc' , $ record ) ; if ( $ task -> is_blocking ( ) ) { $ task -> get_cron_lock ( ) -> release ( ) ; } $ task -> get_lock ( ) -> release ( ) ; // Finalise the log output. logmanager :: finalise_log ( true ) ; }
docstring: This function indicates that an adhoc task was not completed successfully and should be retried.
  
  @param \core\task\adhoc_task $task
docstring_tokens: This function indicates that an adhoc task was not completed successfully and should be retried .