Skip to main content
Training jobs may fail because of insufficient resources, image issues, incorrect startup commands, invalid data paths, node exceptions, communication hangs, or resource preemption. When troubleshooting, first check the status, events, logs, and monitoring information on the training task details page to determine whether the issue occurred during scheduling, environment preparation, program execution, or recovery. Then choose Debug resubmission, automatic fault tolerance, or Bisect Diagnose as appropriate.

Troubleshooting Task Issues

  1. Go to Training > Workloads and locate the target task.
  2. Click the task name to open the training task details page.
  3. Review the lifecycle timeline to determine whether the task is stuck in the submission, queuing, environment preparation, running, or completion stage.
  4. Review Status to verify the overall task status, Pod status, node, exit code, and status description.
  5. Review Event to check for insufficient resources, image pull failures, Volume mount failures, scheduling blocks, or fault-tolerance-related events.
  6. Review Log to identify training script errors, missing dependencies, incorrect data paths, or runtime exceptions.
  7. Review Monitoring to determine whether there are bottlenecks or abnormal fluctuations in GPU, GPU memory, CPU, memory, or network.

Handle Based on Symptoms

Key Troubleshooting Dir

Long Queue Times

Even when total resources appear sufficient, the placement requirements for individual replicas and the overall scheduling requirements for distributed jobs must still be met. We recommend troubleshooting in the following order:
  1. Open the task details and check Status and Event to determine whether the issue is related to quota, the resource pool, node policies, or the instance specification. If an event points to a node policy, check the Schedule Type, Scope, Effect Mode, Workload Type, Node Name, and expiration time in Node Scheduling Policy.
  2. Verify your personal quota, resource pool availability, and resource pool status.
  3. Check whether a single replica can fit on an available node. For distributed tasks, all replicas must simultaneously meet the startup requirements.
  4. If the task has network group requirements, ensure that the nodes are in compatible groups. RoCE POD on the page or in events refers to a network group, not a Kubernetes Pod.
For more troubleshooting methods for resource queuing, see Troubleshoot insufficient task resources or long queue times.

Running but Training Makes No Progress

Resource allocation does not mean that training computation has started. First, check whether each Pod is ready in Status, then use Log and Monitoring to identify the stage at which the issue occurs:

Failed to Pull Image or Access File

Resubmit the task after fixing the deterministic configuration errors. Simply increasing the number of retries usually cannot resolve an incorrect image address, an invalid path, insufficient permissions, or insufficient capacity.

Continue Training After an Interruption

After a task is preempted, a node fails, it is manually stopped, or it reaches the fault-tolerance limit, first check whether an automatic recovery action is already in progress, then decide whether to resubmit it manually.
  1. View the actual resource pool and preemption, failure, or stop events to identify the cause of the interruption.
  2. View Fault Tolerance Detail and associated tasks to check whether an in-place restart or automatic resubmission has already occurred.
  3. Track the latest attempt and check the checkpoint loading logs, training steps after recovery, and new output.
  4. Manual termination, budget exhaustion, or a fail-fast policy may halt automatic recovery. Verify the current attempt before manually resubmitting the task to avoid running two copies simultaneously.

Resubmit Using Debug

Debug resubmission retains the original task’s resource requirements but does not immediately execute the original training command. Instead, it provides a live environment for troubleshooting. Locate the target task in the task list, click Resubmit, and select Debug mode in the resubmission dialog. Before resubmitting, ensure that any checkpoints, logs, or model outputs to be retained have been written to a persistent Volume. For a RayJob, if the Submitter Pod has completed but the Head/Worker Pods are still retained, the job may be in the DebugHolding state. You can access the Head Pod to view the Ray cluster status.