code: def start_trial(self, trial, checkpoint=None):
          
  
          self._commit_resources(trial.resources)
          try:
              self._start_trial(trial, checkpoint)
          except Exception as e:
              logger.exception("Error starting runner for Trial %s", str(trial))
              error_msg = traceback.format_exc()
              time.sleep(2)
              self._stop_trial(trial, error=True, error_msg=error_msg)
              if isinstance(e, AbortTrialExecution):
                  return  # don't retry fatal Tune errors
              try:
                  # This forces the trial to not start from checkpoint.
                  trial.clear_checkpoint()
                  logger.info(
                      "Trying to start runner for Trial %s without checkpoint.",
                      str(trial))
                  self._start_trial(trial)
              except Exception:
                  logger.exception(
                      "Error starting runner for Trial %s, aborting!",
                      str(trial))
                  error_msg = traceback.format_exc()
                  self._stop_trial(trial, error=True, error_msg=error_msg)
docs: Starts the trial.
  
          Will not return resources if trial repeatedly fails on start.
  
          Args:
              trial (Trial): Trial to be started.
              checkpoint (Checkpoint): A Python object or path storing the state
                  of trial.