Problem with the Transformer

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
BCAPP
Participant
Posts: 7
Joined: Tue Aug 02, 2005 9:29 am

Problem with the Transformer

Post by BCAPP »

I have developed a job which reads from two sequential files and performs a full outer join. The output of the join stage goes thru a Transformer where data is split into 3 output files based on certain criteria.

While running the job the job abends and gives the below error message
tfpAddrrec,0: Operator terminated abnormally: received signal SIGSEGV

(tfpAddrrec is the Transformer stage).

If I remove the transformer stage the job runs fine.
I tried changing the Transformer but to no avail.
Please let me know wht can be done in this regard.

Thanks,
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Please post your "criteria" - the exact expressions, please. Also, if there are any output column derivation expressions in the Transformer can you also post these?

SIGSEGV is a segmentation violation. You might search the Forum for these terms. One common cause is using NULL in an expression that can not handle null values. Another is trying to stuff a string more than N characters long into a Char(N) data type.

In either case I would have expected to see a warning from a parallel job. Can you reset the job in Director, and post any text "from previous run..." ?
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
BCAPP
Participant
Posts: 7
Joined: Tue Aug 02, 2005 9:29 am

Post by BCAPP »

There are basically 3 output links from the Transformer based on the below constraint:
Output1:
(lnkRecsOut.leftRec_BRANCH_NUM <>"" and lnkRecsOut.rightRec_BRANCH_NUM<>"")
Output2:
lnkRecsOut.rightRec_BRANCH_NUM = ""
Output3:
lnkRecsOut.leftRec_BRANCH_NUM = ""


lnkRecsOut.leftRec_BRANCH_NUM is coming out of the left outer join and is defined as nullable

I have handled the Null condition for all the derivations in the Transformer.
I am still getting the below error message
tfpAddrrec,0: Operator terminated abnormally: received signal SIGSEGV
main_program: Unexpected exit status 1
main_program: Step execution finished with status = FAILED.


Thanks,
Bhavana
ameyvaidya
Charter Member
Charter Member
Posts: 166
Joined: Wed Mar 16, 2005 6:52 am
Location: Mumbai, India

Post by ameyvaidya »

BCAPP wrote: I have handled the Null condition for all the derivations in the Transformer.
Hi Bhavana,

As far as I remember, the PX transformer is very Null-Intolerant. :wink:

Have you tried using NullToEmpty(lnkRecsOut.rightRec_BRANCH_NUM) in the constraints derivations?
Amey Vaidya<i>
I am rarely happier than when spending an entire day programming my computer to perform automatically a task that it would otherwise take me a good ten seconds to do by hand.</i>
<i>- Douglas Adams</i>
Post Reply