DataStage Transformer 编译出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DataStage Transformer 编译出错相关的知识,希望对你有一定的参考价值。

Output from transformer compilation follows:

##I TFCN 000001 03:08:48(000) <main_program>
IBM DataStage(tm) Parallel Extender 7.5.3
Copyright (c) 2004, 1997-2004 Ascential Software Corporation.
All Rights Reserved

##I TOSH 000002 03:08:49(000) <main_program> orchgeneral: loaded
##I TOSH 000002 03:08:49(001) <main_program> orchsort: loaded
##I TOSH 000002 03:08:49(002) <main_program> orchstats: loaded
##I TFSC 000001 03:08:49(005) <main_program> APT configuration file: /dsadm/Ascential/DataStage/Configurations/default.apt
##W TCOS 000049 03:08:49(006) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E TBLD 000000 03:08:50(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 32,512.
##E TFSR 000019 03:08:50(001) <main_program> Could not check all operators because of previous error(s)
##W TFCP 000000 03:08:50(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##W TBLD 000000 03:08:50(003) <main_program> Error when checking composite operator: Output from subprocess: sh: g++: command not found

##I TFCP 000000 03:08:50(004) <transform> Error when checking composite operator: g++ -fPIC -O -I/dsadm/Ascential/DataStage/PXEngine/include -O -fPIC -Wno-deprecated -c /dsadm/Ascential/DataStage/Projects/test/RT_BP3.O/V0S1_transf_Transformer_1.C -o /dsadm/Ascential/DataStage/Projects/test/RT_BP3.O/V0S1_transf_Transformer_1.tmp.o.
##E TCOS 000029 03:08:50(005) <main_program> Creation of a step finished with status = FAILED. (transf.Transformer_1)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S1_transf_Transformer_1 transform operator.
0003: //
0004:
0005: // define our input/output link names
0006: inputname 0 DSLink3;
0007: outputname 0 DSLink4;
0008:
0009: initialize
0010: // define our row rejected variable
0011: int8 RowRejected0;
0012:
0013: // define our null set variable
0014: int8 NullSetVar0;
0015:
0016:
0017:
0018: mainloop
0019: // initialise our row rejected variable
0020: RowRejected0 = 1;
0021:
0022: // evaluate columns (no constraints) for link: DSLink4
0023: writerecord 0;
0024: RowRejected0 = 0;
0025:
0026:
0027: finish
0028:
0029:
*** End of Internal Generated Transformer Code

参考技术A [DS]root.bash#rpm -aq|grep gcc
compat-gcc-34-3.4.6-19.el6.x86_64
libgcc-4.4.7-3.el6.i686
libgcc-4.4.7-3.el6.x86_64
[DS]root.bash#^C
[DS]root.bash#g++
-bash: g++: command not found
[DS]root.bash#
[DS]root.bash#
[DS]root.bash#
[DS]root.bash#yum install gcc-c++
....

[DS]root.bash#
[DS]root.bash#
.....
[DS]dsadm.bash$g++
g++: no input files
[DS]dsadm.bash$
[DS]dsadm.bash$

datastage图形化工具向服务器发送请求失败

参考技术A 应该是作业的rt_log文件被锁了。
Datastage环境中存在一种锁的概念,是datastage特定进程对特定文件专属访问的权限,这些特定文件一般是“RT_”开头的,被锁的文件或记录,除了专属的进程外,其它进程就无法访问。
Datastage的锁根据专属访问范围,分为组锁和记录锁。
正常情况下,datastage客户端连接服务器就会产生锁,作业在编译或者运行时也产生锁,作业运行时进行数据所处理的数据文件、临时文件也会产生锁,这些锁是用来保证datastage的连接、运行、逻辑处理能正常完成。
如果datastage运行过程发生连接异常中断、运行异常终止、逻辑处理异常停止,以及其它一些不可知的错误,导致datastage进程意外终止,但锁却还是保留在文件或记录里,则下次作业下次运行时,就很可能发生运行出错了,因为无法获得运行所需要的专属访问。

以上是关于DataStage Transformer 编译出错的主要内容,如果未能解决你的问题,请参考以下文章

如何合理设置Datastage Administrator中的BUFFER大小

datastage里的timestamp类型转换问题

datastage图形化工具向服务器发送请求失败

如何编译 xslt2-transformer.oxt LibreOffice 扩展

datastage lookup报错,求解

datastage中怎样进行行列转换和列行转换,工具是datastage7.5,