Waiting for resources

Updated at:

Common issues and solutions for task instances that are waiting for resources in DataWorks.

Why are instances waiting for resources?

  • Symptom

    When the scheduler dispatches a task to the execution engine, the instance might be queued for the following reasons:

    • Waiting for a resource group for scheduling.

    • Waiting for a resource group for Data Integration.

    • Waiting for compute resources from the engine.

  • Cause

    Resources in a resource group are limited. Long-running tasks that do not release resources block other tasks from running. For more information about the task dispatching mechanism, see Overview of DataWorks resource groups.

  • Solution

    Go to Operation Center > Intelligent Diagnostics, enter an instance ID to perform an end-to-end analysis of the task. This lets you check the task's execution and queue status and identify which other tasks are consuming resources. You can quickly locate tasks that occupy resources for a long time and block the execution pipeline. For more information, see Intelligent Diagnosis.

    For an instance node that is Waiting for Resources, right-click the node and select Run Diagnostics > Resources to view other tasks that are still running when the current task's Running Status is Waiting for Resources. Alternatively, in the node details panel at the bottom right, click the Diagnose link next to the task status to open Instance Diagnose. When filtering tasks, you can set the execution status to waiting for resource in the top filter bar to quickly locate relevant instances.

  • Normal delay during peak scheduling at midnight

    If a task is scheduled around 00:00 and the wait time is only a few minutes, this is typically normal during the peak scheduling period. Every day around 00:00, a large number of tasks are triggered simultaneously, and instances may experience minute-level wait times from the scheduled time to the actual start. This delay occurs during the task dispatching phase.

    To reduce this delay, stagger the task scheduling time to a point after 00:00. If the wait time significantly exceeds a few minutes, or occurs outside the 00:00 time period, investigate resource usage by following the Cause and Solution sections above.

Why does a task keep waiting for gateway scheduling resources?

  • Symptom

    The task log indicates that the task is waiting for gateway scheduling resources.

  • Cause

    The number of concurrent tasks in the current resource group has reached the upper limit.

  • Solution

    You need to wait for running tasks to complete and release resources, or scale out the exclusive resource group for scheduling. You can view resource information in the following ways.

    • Using the shared resource group for scheduling

      • View through Intelligent Diagnosis

        Go to Operation Center > Intelligent Diagnostics, enter an instance ID to perform an end-to-end analysis of the task. This lets you check the task's execution and queue status and identify which other tasks are consuming resources. You can quickly locate tasks that occupy resources for a long time and block the execution pipeline. For more information, see Intelligent Diagnosis.

        For an instance node that is Waiting for Resources, right-click the node and select Run Diagnostics > Resources to view other tasks that are still running when the current task's Running Status is Waiting for Resources.

      • View through the Dashboard

        On the Dashboard page of Operation Center, view the utilization of shared resource groups.

        Note

        The period from 00:00 to 09:00 every day is the peak time for DataWorks tasks, when shared scheduling resources are in high demand and tasks may wait for resources. You can stagger your scheduled tasks to off-peak hours or add an exclusive resource group for scheduling on the DataWorks console to mitigate resource contention.

    • If you use an exclusive resource group for scheduling, you can view the task list and resource utilization of the resource group through the DataWorks console or Operation Center.

      • View through Intelligent Diagnosis

        Go to Operation Center > Intelligent Diagnostics, enter an instance ID to perform an end-to-end analysis of the task. This lets you check the task's execution and queue status and identify which other tasks are consuming resources. You can quickly locate tasks that occupy resources for a long time and block the execution pipeline. For more information, see Intelligent Diagnosis.

        For an instance node that is Waiting for Resources, right-click the node and select Run Diagnostics > Resources to view other tasks that are still running when the current task's Running Status is Waiting for Resources.

      • View through the DataWorks console

        In the left-side navigation pane of the DataWorks console, click Resource Groups. On the Resource Groups page, view the resource Utilization rate. Click Utilization rate to view Resource Groups, Resource Usage, and more.

      • View through Resource O&M

        In the left-side navigation pane of the Operation Center page, click Resource O&M to view resource utilization and other information.

        Note

        Different specifications of exclusive resource groups for scheduling support different maximum numbers of concurrent instances. For more information, see DataWorks resource group specifications.

Why does a Data Integration task keep showing a 'wait' status?

  • Symptom

    The Data Integration task log shows a wait status.

  • Cause

    The number of tasks running on the current Data Integration resource group exceeds the maximum concurrency supported by the server. The task is waiting for Data Integration execution resources.

    Note

    If the resource utilization is high but no tasks are actually running, or if the number of executable tasks on the resource group has not reached the upper limit but tasks still cannot be executed, Click the application link to join the "Alibaba Cloud Big Data & AI Platform" group. Then, scan the QR code below to join the DataWorks product DingTalk group for pre-sales and after-sales support. You can directly mention the intelligent chatbot for assistance or contact staff on duty during business hours.技术支持二维码

  • Solution:

    • Check the concurrent parameter value in the log (task configuration). If the concurrency is set too high, configure the task concurrency based on the maximum concurrency supported by the server and the current concurrent consumption.

    • If the concurrency setting of a single task exceeds the maximum concurrency supported by the server, stop all these concurrent tasks, modify the task concurrency, and then run the tasks again.

      In the left-side navigation pane of the Operation Center page, click Dashboard. On the Dashboard page, click the Data Integration tab to view Running Details of Synchronization Task. The top of the synchronization task execution details page provides filter conditions, including Submit Time, Task Status, Task Name, Source Data Source Type, Data Integration Resource Group, Destination Data Source Type, and Public Network Traffic. The task list below contains columns such as Instance ID, Task Name, Task Status, Submit Time, Start Time, End Time, Duration, Source Data Source, Destination Data Source, Data Integration Resource Group, Running Concurrency, Synchronized Data Volume, and Synchronization Progress. You can use these columns to troubleshoot the cause of task waiting.

      Note
      • Task concurrency must be configured based on the maximum concurrency supported by the server, the number of tasks running simultaneously, and the concurrency setting of each task.

      • A Data Integration task occupies one scheduling resource. If a task does not run successfully for a long time, it may block other tasks from running.

    • Wait for the running tasks to complete and release resources, or scale out the exclusive Data Integration resource group. You can view resource information in the following ways.

      Note

      If a Data Integration task is waiting for a resource group, see Troubleshoot Data Integration resource group issues for solutions.

      • View through Intelligent Diagnosis

        Go to Operation Center > Intelligent Diagnostics, enter an instance ID to perform an end-to-end analysis of the task. This lets you check the task's execution and queue status and identify which other tasks are consuming resources. You can quickly locate tasks that occupy resources for a long time and block the execution pipeline. For more information, see Intelligent Diagnosis.

        For an instance node that is Waiting for Resources, right-click the node and select Run Diagnostics > Resources to view other tasks that are still running when the current task's Running Status is Waiting for Resources.

      • View in the DataWorks console

        In the left-side navigation pane of the DataWorks console, click Resource Group List. On the Resource Group List page, view the resource Utilization rate. Click Utilization rate to view Resource Groups, Resource Usage, and other information.

      • View in Resource O&M

        In the left-side navigation pane of the Operation Center page, click Resource O&M to view resource utilization, running tasks, and other information.

        Note

        Exclusive Data Integration resource groups of different specifications support different maximum numbers of concurrent instances. For more information, see Exclusive resource groups for Data Integration.