Compilation error : Job contains cyclic or linear dependenci

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
dganeshm
Premium Member
Premium Member
Posts: 91
Joined: Tue Aug 11, 2009 3:26 pm

Compilation error : Job contains cyclic or linear dependenci

Post by dganeshm »

http://picasaweb.google.com/dganeshm/DS ... 0178227890[/img]

Please see the URL above to see the design of the job. What I am trying to do is that ..

DSLink32 will give me the total number of rows passing through it, for which I am DSLinkRowCount in the transformed (Transformer_27) and use the Max function in the aggregator , call it TOT_COUNT

DSLink44 has a constraint : I am trying to get the number of rows which will satisfy the contraint, and use the @OUTPUTROWNUM and followed by MAX in the aggregator, call it MATCH_COUNT.

And these two counts , should now be loaded into a single table as a single record, so I am try combine the output of these aggregators, since aggregator doesn't support reference link , I tried to use a Hashed file stage and then give it as input to Transformer, but am getting a compilation error...

Can someone help me with this, is there a easier way to do this..
Regards,
Ganesh
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Two jobs. One to do the calculations and store them into a hashed file, the other to merge the streams of results.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
PhilHibbs
Premium Member
Premium Member
Posts: 1044
Joined: Wed Sep 29, 2004 3:30 am
Location: Nottingham, UK
Contact:

Post by PhilHibbs »

Hashed_File_84 in your job represents a stage that must finish accepting all of its input before it can be referenced by the output link. While an Aggregator stage also kind of does this, it does not create a break in the job flow in the same way that a file stage does. DataStage treats the stream through Aggregator35 as one continuous flow, which is why there is contention in your design. If you want to keep it as one job, you have to land the output of either DSLink32 or DSLink37 in a Sequential File and then read it back in.

*Update*: So that's what DS8 looks like, eh? I like the Quick Find facility.
Phil Hibbs | Capgemini
Technical Consultant
Post Reply