Datastage作业运行不显示数据流状态和数据量

本文遵循BY-SA版权协议,转载请附上原文出处链接。


本文作者: 黑伴白

本文链接: http://heibanbai.com.cn/posts/34bc45de/

Datastage 作业运行不显示数据流状态和数据量

DataStage jobs hung in a project in IBM InfoSphere DataStage

版本:IBM InfoSphere DataStage V11.3.1

操作系统:linux redhat 6.4

DS 作业运行不显示数据状态(即Link颜色变化以及数据量),同时在监控中看到的信息都是READY。最开始解决办法,重启服务器之后,可以解决该问题,但是过段时间该问题又会产生。且运行单个作业时没有问题,一旦运行多个作业,就会出现此问题。

针对此问题,网上最多的一般都是方案三,但有时并不是此问题引起,按此处理并不能解决问题。

后来根据多方查证及尝试,得到另一种解决方案,直接解决了问题,见处理方案一。

可根据自身情况进行尝试!

处理方案一

如果Operations Console功能开启,可能也会影响作业运行的数目,运行一个作业没有问题,可一旦运行多个作业,就会出现Hang住的情况,作业状态一直是Ready。

如果是此种场景,可尝试以下解决方案:禁用监视数据功能(此功能一般不会用到,可放心关闭)。

  1. 切换至如下安装目录 - 根据实际情况进入

    cd /opt/IBM/InformationServer/DSODB

  2. 编辑配置文件,关闭监视数据功能

    vi DSODBConfig.cfg

    image-20210213162850732

  3. 重启服务

    cd /opt/IBM/InformationServer/Server/DSEngin/bin

    ./uv -admin -stop

    cd /opt/IBM/InformationServer/Server/DSEngin/bin

    ./uv -admin -start

处理方案二

本方案为官方的一种问题方案,根据实际情况看是否符合场景

Problem

All DataStage jobs are hung in a project; they are running, but hung. The workaround is to reboot the server.

Cause

Possible causes include:

  • Excessive amount of files in &PH& directory for the project
  • Incorrect job status
  • Internal locks

Resolving The Problem

Check the following:

  • There is a &PH& directory in each DataStage project directory, which contains information about active stages that is used for diagnostic purposes. The &PH& directory is added to every time a job (both types: server and parallel/PX) is run, and needs periodic cleaning out.

    To clear the file from within DataStage:

    1. Ensure there are no DataStage jobs running anywhere on the system by running “ps -ef | grep DSD”
    2. From the DataStage Administrator, go to the Projects page, select the project whose file you want to clear and click the Command button. The Command Interface dialog box opens.
    3. Type the following into the command field: CLEAR.FILE &PH& (all uppercase)
    4. Click Execute to run the command and clear the file.
  • If the job processes have aborted, but the stattus indicates it is running this can be resolved by clearing the status of the job, check for locks, and then try running the job again.

    Clear Status file should be used only when the status of a job hangs in “running” status.

    To Clear the Status File of the job, from the DataStage Director, select the job and then click menu Job -> Clear Status File).

    If this menu is grayed out, you first need to “Enable job administration in Director” in your project from the DataStage Administrator, and restart your Director.

  • If you cannot clear the status file, please try checking/removing locks

    Here are two methods for checking/removing locks (you need only perform one method to remove the locks)

    From the DataStage (DS) clients:

    1. Launch DS Director
    2. Select Job -> Cleanup Resources (if Cleanup Resources is disabled, go to step 10 below)
    3. In the Processes pane, click Show All
    4. In the Locks pane, click Show All
    5. In the Locks pane, scroll to the job name in the Item ID field
    6. Note the PID/User # associated with the job
    7. Click on the PID # in the upper pane (Processes)
    8. Click Show by process (Locks pane)
    9. Click Release All (Locks pane)
    10. Launch DS Administrator
    11. In the Projects tab, highlight the job
    12. Click Properties
    13. Check Enable job administration in Director
    14. Click OK
    15. Click Close
    16. Exit DS Director and relaunch
    17. Perform steps 3 - 9 above.
  • From Unix/Linux server:

    1. Log into the server using the dsadm user
    2. cd to the DSEngine directory
    3. Enter . ./dsenv to source the dsenv file
    4. Enter ./bin/uvsh to get into DataStage prompt
    5. Run LIST.READU EVERY to list all the locks
    6. Check active record locks under “Item Id” column for job name or RT_CONFIG# or RT_LOG# (# matches the job description number)
    7. Write down the Inode numbers and user numbers associated with these locks
    8. Enter UNLOCK INODE inode# USER user# ALL
    9. You can use Q to get out of DataStage command line, e.g. “>” prompt

处理方案三

场景

最近开发环境,DS 作业运行不显示数据状态(即Link颜色变化以及数据量),同时在监控中看到的信息都是READY。最开始解决办法,重启服务器之后,可以解决该问题,但是过段时间该问题又会产生。

问题描述

作业运行不显示数据流状态和数据量,同时在director 点击monitor看到作业状态如下:

image-20210213160802762

在作业运行之后,日志信息可以看到如下预警:

  • Warning main_program: failed to initialize job monitoring. Monitor information will not be generated.
  • Warning: Failed to connect to JobMonApp on port 13401

问题分析

查看JobMonApp.log in $PXEngine/java 日志 可以看出。是内存溢出了。

image-20210213160820530

在IBM官网找了一篇记录该问题情况:

http://www-01.ibm.com/support/docview.wss?uid=swg21508253

说是OutOfMemoryError(内存溢出)。修正$PXEngine/java 下的jobmoninit 文件。最终问题得到解决。

以下是和IBM DS顾问咨询信息,解释以上情况发生原因:

java monitor的heap 内存区不足导致 jobmonitor的应用停止。需要提高heap的大小 ,如代码-Xmx512m就是加大heap内存区 。重启系统的之后,这个应用内存被释放了,所以重启之后,该问题会暂时解决。但是在大批量调度作业还是会发生该问题。

问题解决

在DS服务端路径/ds/informationServer/Server/PXEngine/java 找到文件jobmoninit 增加标红内容: 注:256,512,768,1024 这样加。

image-20210213160842857


蚂蚁再小也是肉🥩!


Datastage作业运行不显示数据流状态和数据量
http://heibanbai.com.cn/posts/34bc45de/
作者
黑伴白
发布于
2021年2月13日
许可协议

“您的支持,我的动力!觉得不错的话,给点打赏吧 ୧(๑•̀⌄•́๑)૭”

微信二维码

微信支付

支付宝二维码

支付宝支付