Transformer compilation error in AIX
Posted: Mon Apr 15, 2019 6:56 pm
Hi Experts,
Recently we have upgraded the OS from AIX 6.1 to AIX 7.1. We are using IBM Information Server v 9.1.2. While compiling PX jobs, it started giving below errors. We are certain that this is due to a compiler problem. However, wondering how to resolve the issue.
Diagnostic details:
> /usr/Xvacpp/bin/xlC_r -qversion
IBM XL C/C++ for AIX, V10.1
Version: 10.01.0000.0000
> uname -a
AIX hostname 1 7 00CFEBA74C00
> lslpp -l | grep "vac.C"; lslpp -l | grep "vacpp.cmp.core"; lslpp -l | grep "xlC.aix*"
xlC.aix61.rte 13.1.3.1 COMMITTED IBM XL C++ Runtime for AIX 6.1
Compiler Errors:
Output from transformer compilation follows:
##I IIS-DSEE-TFCN-00001 07:32:25(000) <main_program>
IBM InfoSphere DataStage Enterprise Edition 9.1.0.6791
Copyright (c) 2001, 2005-2012 IBM Corporation. All rights reserved
##I IIS-DSEE-TFCN-00006 07:32:25(001) <main_program> conductor uname: -s=AIX; -r=1; -v=7; -n=fcnaswdbu2; -m=00CFEBA74C00
##I IIS-DSEE-TOSH-00002 07:32:25(002) <main_program> orchgeneral: loaded
##I IIS-DSEE-TOSH-00002 07:32:25(003) <main_program> orchsort: loaded
##I IIS-DSEE-TOSH-00002 07:32:25(004) <main_program> orchstats: loaded
##W IIS-DSEE-TOSH-00049 07:32:25(007) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E IIS-DSEE-TBLD-00076 07:32:28(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 256.
##E IIS-DSEE-TFSR-00019 07:32:28(001) <main_program> Could not check all operators because of previous error(s)
##W IIS-DSEE-TFTM-00012 07:32:28(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##W IIS-DSEE-TBLD-00000 07:32:28(003) <main_program> Error when checking composite operator: Output from subprocess: "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h", line 74.20: 1540-0403 (S) "strcpy(char *, const char *)" is already defined.
##W IIS-DSEE-TBLD-00000 07:32:28(004) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 423.17: 1540-0425 (I) "strcpy" is defined on line 423 of "/usr/include/string.h".
##I IIS-DSEE-TBLD-00079 07:32:28(005) <transform> Error when checking composite operator: /xenv/XLC/X/10.1/AIX7.1/usr/vacpp/bin/xlC_r -O -I/opt/IBMDS91/InformationServer/Server/PXEngine/include -O -q64 -qtbtable=full -c /opt/IBMDS91/InformationServer/Server/Projects/SIT_FCC/RT_BP994.O/V0S2_CPPXCompile_Transformer_2.C -o /opt/IBMDS91/InformationServer/Server/Projects/SIT_FCC/RT_BP994.O/V0S2_CPPXCompile_Transformer_2.tmp.o.
##W IIS-DSEE-TBLD-00000 07:32:28(006) <main_program> Error when checking composite operator: Output from subprocess: "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h", line 27.20: 1540-0424 (I) "strcpy" is declared on line 27 of "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h".
##W IIS-DSEE-TBLD-00000 07:32:28(007) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 47.18: 1540-0424 (I) "strcpy" is declared on line 47 of "/usr/include/string.h".
##W IIS-DSEE-TBLD-00000 07:32:28(008) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 212.26: 1540-0424 (I) "strcpy" is declared on line 212 of "/usr/include/string.h".
..
..
..
##E IIS-DSEE-TCOS-00029 07:32:28(531) <main_program> Creation of a step finished with status = FAILED. (CPPXCompile.Transformer_2)
*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S2_CPPXCompile_Transformer_2 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 control variables
0011: int8 RowRejected0;
0012: int8 NullSetVar0;
0013:
0014: // declare our intermediate variables for this section
0015: string InterVar0_0;
0016:
0017: // initialise constant values which require conversion
0018: InterVar0_0 = "TEST";
0019: }
0020:
0021: mainloop {
0022:
0023: // initialise the rejected row variable
0024: RowRejected0 = 1;
0025:
0026: // evaluate columns (no constraints) for link: DSLink4
0027: DSLink4.c1 = (DSLink3.c1 + InterVar0_0);
0028: writerecord 0;
0029: RowRejected0 = 0;
0030: }
0031:
0032: finish {
0033: }
0034:
*** End of Internal Generated Transformer Code
Recently we have upgraded the OS from AIX 6.1 to AIX 7.1. We are using IBM Information Server v 9.1.2. While compiling PX jobs, it started giving below errors. We are certain that this is due to a compiler problem. However, wondering how to resolve the issue.
Diagnostic details:
> /usr/Xvacpp/bin/xlC_r -qversion
IBM XL C/C++ for AIX, V10.1
Version: 10.01.0000.0000
> uname -a
AIX hostname 1 7 00CFEBA74C00
> lslpp -l | grep "vac.C"; lslpp -l | grep "vacpp.cmp.core"; lslpp -l | grep "xlC.aix*"
xlC.aix61.rte 13.1.3.1 COMMITTED IBM XL C++ Runtime for AIX 6.1
Compiler Errors:
Output from transformer compilation follows:
##I IIS-DSEE-TFCN-00001 07:32:25(000) <main_program>
IBM InfoSphere DataStage Enterprise Edition 9.1.0.6791
Copyright (c) 2001, 2005-2012 IBM Corporation. All rights reserved
##I IIS-DSEE-TFCN-00006 07:32:25(001) <main_program> conductor uname: -s=AIX; -r=1; -v=7; -n=fcnaswdbu2; -m=00CFEBA74C00
##I IIS-DSEE-TOSH-00002 07:32:25(002) <main_program> orchgeneral: loaded
##I IIS-DSEE-TOSH-00002 07:32:25(003) <main_program> orchsort: loaded
##I IIS-DSEE-TOSH-00002 07:32:25(004) <main_program> orchstats: loaded
##W IIS-DSEE-TOSH-00049 07:32:25(007) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E IIS-DSEE-TBLD-00076 07:32:28(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 256.
##E IIS-DSEE-TFSR-00019 07:32:28(001) <main_program> Could not check all operators because of previous error(s)
##W IIS-DSEE-TFTM-00012 07:32:28(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##W IIS-DSEE-TBLD-00000 07:32:28(003) <main_program> Error when checking composite operator: Output from subprocess: "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h", line 74.20: 1540-0403 (S) "strcpy(char *, const char *)" is already defined.
##W IIS-DSEE-TBLD-00000 07:32:28(004) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 423.17: 1540-0425 (I) "strcpy" is defined on line 423 of "/usr/include/string.h".
##I IIS-DSEE-TBLD-00079 07:32:28(005) <transform> Error when checking composite operator: /xenv/XLC/X/10.1/AIX7.1/usr/vacpp/bin/xlC_r -O -I/opt/IBMDS91/InformationServer/Server/PXEngine/include -O -q64 -qtbtable=full -c /opt/IBMDS91/InformationServer/Server/Projects/SIT_FCC/RT_BP994.O/V0S2_CPPXCompile_Transformer_2.C -o /opt/IBMDS91/InformationServer/Server/Projects/SIT_FCC/RT_BP994.O/V0S2_CPPXCompile_Transformer_2.tmp.o.
##W IIS-DSEE-TBLD-00000 07:32:28(006) <main_program> Error when checking composite operator: Output from subprocess: "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h", line 27.20: 1540-0424 (I) "strcpy" is declared on line 27 of "/xenv/XLC/X/10.1/AIX5.3/usr/vacpp/include/string.h".
##W IIS-DSEE-TBLD-00000 07:32:28(007) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 47.18: 1540-0424 (I) "strcpy" is declared on line 47 of "/usr/include/string.h".
##W IIS-DSEE-TBLD-00000 07:32:28(008) <main_program> Error when checking composite operator: Output from subprocess: "/usr/include/string.h", line 212.26: 1540-0424 (I) "strcpy" is declared on line 212 of "/usr/include/string.h".
..
..
..
##E IIS-DSEE-TCOS-00029 07:32:28(531) <main_program> Creation of a step finished with status = FAILED. (CPPXCompile.Transformer_2)
*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S2_CPPXCompile_Transformer_2 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 control variables
0011: int8 RowRejected0;
0012: int8 NullSetVar0;
0013:
0014: // declare our intermediate variables for this section
0015: string InterVar0_0;
0016:
0017: // initialise constant values which require conversion
0018: InterVar0_0 = "TEST";
0019: }
0020:
0021: mainloop {
0022:
0023: // initialise the rejected row variable
0024: RowRejected0 = 1;
0025:
0026: // evaluate columns (no constraints) for link: DSLink4
0027: DSLink4.c1 = (DSLink3.c1 + InterVar0_0);
0028: writerecord 0;
0029: RowRejected0 = 0;
0030: }
0031:
0032: finish {
0033: }
0034:
*** End of Internal Generated Transformer Code