Page 1 of 1

compile error in Transformer

Posted: Thu Aug 03, 2006 9:10 am
by mctny
Hi Everybody,

I am having some problem with compilation of some of the jobs which has transformer in it. I am copying the error log below. it is a regular transformer ( not basic) in a paralle job. it gives a WARNING that the evaluation version of the C++ compiler expired. do you think it is just because of that? I doubt it because some other jobs which also has transformers can be compiled sucessfully, only newly developed jobs cannot be compiled

any ideas?

P.S. I searched the forum on this issue but I couldnbot find the exact problem or the solution so that's why I decided to post a new topic.



Error compiling parallel transformer State_Agency_National_Ind_v0.Transformer_24
Output from transformer compilation follows:

##I TFCN 000001 08:22:39(000) <main_program>
Ascential DataStage(tm) Enterprise Edition 7.5.1A
Copyright (c) 2004, 1997-2004 Ascential Software Corporation.
All Rights Reserved


##I TUTL 000031 08:22:39(001) <main_program> The open files limit is 2000; raising to 2147483647.
##I TOSH 000002 08:22:39(002) <main_program> orchgeneral: loaded
##I TOSH 000002 08:22:39(003) <main_program> orchsort: loaded
##I TOSH 000002 08:22:39(004) <main_program> orchstats: loaded
##I TFSC 000001 08:22:39(007) <main_program> APT configuration file: /app/dstage/Ascential/DataStage/Configurations/default.apt
##I TFSC 000000 08:22:39(008) <main_program>
This step has no datasets.

It has 1 operator:
op0[1p] {(sequential APT_CombinedOperatorController:
(APT_LicenseCountOp in APT_LicenseOperator)
(APT_LicenseCheckOp in APT_LicenseOperator)
) on nodes (
node1[op0,p0]
)}
It runs 1 process on 1 node.
##W TCOS 000049 08:22:40(000) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E TBLD 000000 08:22:40(002) <main_program> Error when checking composite operator: Subprocess command failed with exit status 256.
##E TFSR 000019 08:22:40(003) <main_program> Could not check all operators because of previous error(s)
##W TFCP 000000 08:22:40(004) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##W TBLD 000000 08:22:40(005) <main_program> Error when checking composite operator: Output from subprocess: The license for the Evaluation version of IBM XL C/C++ Enterprise Edition V8.0 for AIX Compiler product has expired.

##I TFCP 000000 08:22:40(006) <transform> Error when checking composite operator: /usr/vacpp/bin/xlC_r -O -I/app/dstage/Ascential/DataStage/PXEngine/include -O -c -qspill=32704 /app/dstage/Ascential/DataStage/Projects/edw1/RT_BP1655.O/V0S24_State_Agency_National_Ind_v0_Transformer_24.C -o /app/dstage/Ascential/DataStage/Projects/edw1/RT_BP1655.O/V0S24_State_Agency_National_Ind_v0_Transformer_24.tmp.o.
##E TCOS 000029 08:22:40(007) <main_program> Creation of a step finished with status = FAILED. (State_Agency_National_Ind_v0.Transformer_24)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S24_State_Agency_National_Ind_v0_Transformer_24 transform operator.
0003: //
0004:
0005: // define our input/output link names
0006: inputname 0 DSLink23;
0007: outputname 0 DSLink2;
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: DSLink2
0023: writerecord 0;
0024: RowRejected0 = 0;
0025: }
0026:
0027: finish {
0028: }
0029:
*** End of Internal Generated Transformer Code

Posted: Thu Aug 03, 2006 11:45 am
by DSguru2B
The Liscense for the C++ complier has expired.

Re: compile error in Transformer

Posted: Thu Aug 03, 2006 11:50 am
by kura
Somestime, if transformation are more complex who will get this kind of error.
Here the Guidelines.

Avoid Handling Null a lot.
and convertion. Try to add one by one until you start getting this.

I would suggest many modif's to avoid these kind of problem

Re: compile error in Transformer

Posted: Thu Aug 03, 2006 12:02 pm
by mctny
kura wrote:Somestime, if transformation are more complex who will get this kind of error.
Here the Guidelines.

Avoid Handling Null a lot.
and convertion. Try to add one by one until you start getting this.

I would suggest many modif's to avoid these kind of problem
thanks for the explanation, even the simplest job doesnot compile, it was compiler version problem as DSGuru2B said. Our sysadmin forced it back to version 7 of the compiler ( instead of version 8) and now it works,

what I didnot understand is that why doesnot it give error instead of warning for the license expiration?

Re: compile error in Transformer

Posted: Mon Aug 07, 2006 9:50 pm
by subbuvp
Output from transformer compilation follows:

Hi All,
I got a error in parallel Transformer like PWD environment variable not set..Can u people clear this doubt?


##I TFCN 000001 09:15:21(000) <main_program>
Ascential DataStage(tm) Enterprise Edition 7.5
Copyright (c) 2004, 1997-2004 Ascential Software Corporation.
All Rights Reserved


##I TOSH 000002 09:15:21(001) <main_program> orchgeneral: loaded
##I TOSH 000002 09:15:22(000) <main_program> orchsort: loaded
##I TOSH 000002 09:15:22(001) <main_program> orchstats: loaded
##W TFPA 000012 09:15:22(002) <main_program> Warning: the PWD environment variable is not defined. Remote process startup may be unsuccessful as a result.If your ORCHESTRATE job does not start up correctly, please set your PWD variable to a value that will work on all nodes of your system. [util\pathutils.C:323]
[/i][/b]

Re: compile error in Transformer

Posted: Mon Aug 07, 2006 10:00 pm
by mctny
subbuvp wrote:Output from transformer compilation follows:

Hi All,
I got a error in parallel Transformer like PWD environment variable not set..Can u people clear this doubt?


##I TFCN 000001 09:15:21(000) <main_program>
Ascential DataStage(tm) Enterprise Edition 7.5
Copyright (c) 2004, 1997-2004 Ascential Software Corporation.
All Rights Reserved


##I TOSH 000002 09:15:21(001) <main_program> orchgeneral: loaded
##I TOSH 000002 09:15:22(000) <main_program> orchsort: loaded
##I TOSH 000002 09:15:22(001) <main_program> orchstats: loaded
##W TFPA 000012 09:15:22(002) <main_program> Warning: the PWD environment variable is not defined. Remote process startup may be unsuccessful as a result.If your ORCHESTRATE job does not start up correctly, please set your PWD variable to a value that will work on all nodes of your system. [util\pathutils.C:323]
[/i][/b]
it looks like it is not an error, it is just a warning, if there is an error after that warning can you post that too?

Posted: Tue Aug 08, 2006 3:02 am
by kumar_s
Add a userdefined variable PWD in DS Administrator which points to your project folder.

Posted: Tue Aug 08, 2006 3:39 am
by subbuvp
Hi Kumar,
I applied the PWD variable and set the path.But this time i got an error like the below one.
Could u plz give a solution >


Output from transformer compilation follows:

##I TFCN 000001 15:06:42(000) <main_program>
Ascential DataStage(tm) Enterprise Edition 7.5
Copyright (c) 2004, 1997-2004 Ascential Software Corporation.
All Rights Reserved


##I TOSH 000002 15:06:42(001) <main_program> orchgeneral: loaded
##I TOSH 000002 15:06:43(000) <main_program> orchsort: loaded
##I TOSH 000002 15:06:44(000) <main_program> orchstats: loaded
##I TCOS 000021 15:06:46(000) <main_program> Echo:
transform -inputschema record
(
Field001:string[max=255];
inRec:*;
)
-outputschema record
(
Field001:string[max=255];
outRec:*;
)
-expressionfile RT_SC87/V0S7_TransformerParallel_Transformer_7.trx
-flag compile
-compiler 'cxx'
-compileopt '-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c'
-linker 'cxx'
-linkopt '-W/TP -W/dll -W/base:0x50000000'
-name V0S7_TransformerParallel_Transformer_7
-dir C:/Ascential/DataStage/Projects/test1/RT_BP87.O

##I TFCP 000018 15:06:47(000) <transform> Calling transform::initializeFromArgs_()
##I TFCP 000019 15:06:47(001) <transform> Returned from transform::initializeFromArgs_()
##I TFCP 000000 15:06:47(002) <transform> Calling transform::preDescribeOperator().
##I TFCP 000000 15:06:47(003) <transform> Returning from transform::preDescribeOperator().
##I TFCP 000000 15:06:47(004) <transform> Calling transform::describeOperator().
##E TBLD 000000 15:06:51(000) <main_program> Subprocess command failed with exit status 256 [buildop\compile.C:471]
##W TFCP 000000 15:06:51(001) <transform> The number of reject datasets "0"is less than the number of input datasets "1". [transform\transform.C:1892]
##W TBLD 000000 15:06:51(002) <main_program> Output from subprocess: cxx: file 'C:/PROGRA~1/MKSTOO~1/etc/cxx.ccg': The system cannot find the file specified.

##I TFCP 000008 15:06:51(003) <transform> cxx -O -IC:/Ascential/DataStage/PXEngine/include -W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c C:/Ascential/DataStage/Projects/test1/RT_BP87.O/V0S7_TransformerParallel_Transformer_7.C -o C:/Ascential/DataStage/Projects/test1/RT_BP87.O/V0S7_TransformerParallel_Transformer_7.tmp.o
##I TFCP 000000 15:06:51(004) <transform> Returning from transform::describeOperator().
##E TFSR 000019 15:06:51(005) <main_program> Could not check all operators because of previous error(s) [api\step_rep.C:1128]
##I TCOS 000022 15:06:51(006) <main_program> Explanation:
Step has 1 operator.
???, invoked with args: -inputschema record ( Field001: string[max=255]; inRec: *; ) -outputschema record ( Field001: string[max=255]; outRec: *; ) -expressionfile RT_SC87/V0S7_TransformerParallel_Transformer_7.trx -flag compile -compiler cxx -compileopt -W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c -linker cxx -linkopt -W/TP -W/dll -W/base:0x50000000 -name V0S7_TransformerParallel_Transformer_7 -dir C:/Ascential/DataStage/Projects/test1/RT_BP87.O

Step has 0 data entities.

##I TCOS 000023 15:06:51(007) <main_program> Dump:
{
text="transform -inputschema record ( Field001: string[max=255]; inRec: *; )\r\n-outputschema record ( Field001: string[max=255]; outRec: *; )\r\n-expressionfile RT_SC87/V0S7_TransformerParallel_Transformer_7.trx\r\n-flag compile\r\n-compiler 'cxx'\r\n-compileopt '-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c'\r\n-linker 'cxx'\r\n-linkopt '-W/TP -W/dll -W/base:0x50000000'\r\n-name V0S7_TransformerParallel_Transformer_7\r\n-dir C:/Ascential/DataStage/Projects/test1/RT_BP87.O",
line=1, column=1, name="", qualname="",
op={
text="transform -inputschema record ( Field001: string[max=255]; inRec: *; )\r\n-outputschema record ( Field001: string[max=255]; outRec: *; )\r\n-expressionfile RT_SC87/V0S7_TransformerParallel_Transformer_7.trx\r\n-flag compile\r\n-compiler 'cxx'\r\n-compileopt '-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c'\r\n-linker 'cxx'\r\n-linkopt '-W/TP -W/dll -W/base:0x50000000'\r\n-name V0S7_TransformerParallel_Transformer_7\r\n-dir C:/Ascential/DataStage/Projects/test1/RT_BP87.O",
line=1, column=1, name=transform, qualname=transform,
wrapout={},
wrapperfile=transform, kind=non_wrapper_cdi_op, exec_mode=none,
args="'record ( Field001: string[max=255]; inRec: *; )'-outputschema'record ( Field001: string[max=255]; outRec: *; )'-expressionfile'RT_SC87/V0S7_TransformerParallel_Transformer_7.trx'-flag'compile'-compiler'cxx'-compileopt'-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c'-linker'cxx'-linkopt'-W/TP -W/dll -W/base:0x50000000'-name'V0S7_TransformerParallel_Transformer_7'-dir'C:/Ascential/DataStage/Projects/test1/RT_BP87.O'"
}
}

##E TCOS 000029 15:06:51(008) <main_program> Creation of step finished with status = FAILED [osh.C:1105] (TransformerParallel.Transformer_7)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S7_repos_Transformer_7 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
kumar_s wrote:Add a userdefined variable PWD in DS Administrator which points to your project folder.

Posted: Tue Aug 08, 2006 8:02 pm
by kumar_s
It is again most likely due to the version of compiler mismatch.

Posted: Wed Aug 16, 2006 1:16 pm
by splayer
kumar_s, I don't know if you are going to respond to this but can you
tell me how you came to the conclusion from subbuvp's posting that the PWD variable should be pointing to the projects
folder? I know that the PWD variable is missing from his post. Also, is PWD like a system variable that needs to be defined?

Thanks.