Merge Error

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
sdevashis
Participant
Posts: 54
Joined: Thu Oct 09, 2003 4:00 am
Location: India

Merge Error

Post by sdevashis »

Hi,
I am trying to create a job where I have same data coming from two sources. I do some tranformation on each of the sources and then pass the data to a merge stage something like below

SOURCE1 --------->TRANFORMER1----------->
                                                                          MERGE----------->TARGET
SOURCE2 --------->TRANFORMER2----------->

During compiling it gives an error saying the stage doesnt support active-to-active input or output.

But if I remove the transofrmers inbetween then the job goes fine which is no acceptable.

IS THIS IS BECAUSE I AM NOT USING ENTERPRISE EDITION

Please advise
/*Devashis*/
Jay
Participant
Posts: 105
Joined: Tue Nov 11, 2003 8:28 pm

Post by Jay »

Even I am new to DS. I tries to simulate your design. But it said Merge stage cannot accept stream links!!!
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

What the message is telling you is that, in the 390 environment, DataStage will not allow two active stage types to be connected together; more exactly, that the Merge stage can not have an active stage type feeding its inputs.

Consider the Join stage.

Alternately, and probably better for your design, insert a fixed width flat file between each Transformer stage and the Merge stage.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
sdevashis
Participant
Posts: 54
Joined: Thu Oct 09, 2003 4:00 am
Location: India

Sorry

Post by sdevashis »

Hi,
I am extremely sorry as I wrote Link Collector as Merge.
The scenario is like below.


SOURCE1 --------->TRANFORMER1----------->
                                                                         Link Collect----------->TARGET
SOURCE2 --------->TRANFORMER2----------->


Sorry for my stupidity.
/*Devashis*/
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

In that case, you're not talking about a DS 390 job. There is no link collector stage in DS 390.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
mhester
Participant
Posts: 622
Joined: Tue Mar 04, 2003 5:26 am
Location: Phoenix, AZ
Contact:

Post by mhester »

Devashis,

There are two ways to solve the issue.

1) From the properties page of the job click on the Performance tab and uncheck "Use project defaults". This will allow you to then choose "Enable row buffering" and choose the "Inter process" radio button.

Or

2) use an IP (Inter Process) stage (passive) between your transforms and the collector. You will need one for each transformer stage in the job that feeds the link collector.

You can also set this at the project level, although it would not be recommended for many different reasons.

If you use either method of row buffering in your job you should avoid using any kind of COMMON block.

Regards,

Michael Hester
sdevashis
Participant
Posts: 54
Joined: Thu Oct 09, 2003 4:00 am
Location: India

Thanks

Post by sdevashis »

Thanks Mhester & Ray.
I could get over the problem.

Jay I hope you also got a work around with the advises..

Thanks again.
/*Devashis*/
Post Reply