Page 1 of 1

Running Server Routine In Parallel

Posted: Mon Feb 04, 2013 9:55 am
by Ankur_KapoorUK
I have a requirement in which I want to run one Server Routine which will be called in Parallel in the Sequencer.

I was expecting this Routine to run in Parallel as scheduled through Sequencer. But it is running Sequentially one by one.

Any specific reason for this to happen. I have read somewhere in DSXChange itself that If we have Server Routine and its has a Return Code then it runs Sequentially.

If it does have Return Code then it can Concurrently. Can you throw more light on it as my Routine is having a Return Code.

Posted: Mon Feb 04, 2013 10:02 am
by chulett
Same issue as posted here by any chance?

Posted: Mon Feb 04, 2013 10:08 am
by Ankur_KapoorUK
Yes it is almost the same Issue. Can you please have help me in this ? I am not able to understand why it is happening?

Posted: Mon Feb 04, 2013 10:16 am
by chulett
First, draw us a picture of your Sequence job either with words or "ascii art" that lets us know the design. Make sure all of the trigger information is posted as well.

Posted: Mon Feb 04, 2013 10:33 am
by Ankur_KapoorUK
Sequencer has the 4 Routine Activity Defined in Parallel in Sequencer -

Routine Activity 1 --> Calling Sever Routine ABC for Table T1
Routine Activity 2 --> Calling Sever Routine ABC for Table T2
Routine Activity 3 --> Calling Sever Routine ABC for Table T3
Routine Activity 4 --> Calling Sever Routine ABC for Table T4

Server Routine ABC return a value. Ideally I was expecting that Sever Routine ABC will be called in Parallel for its corresponding tables.

Sever Routine ABC - Basically fire a SQL in Database.

But the Server Level Routine is running Routine ABC in Sequential Manner.

Posted: Mon Feb 04, 2013 3:08 pm
by rameshrr3
Is it because a routine activity ( unlike a job activity) cannot be invoked as multiple instance ?

Posted: Mon Feb 04, 2013 3:28 pm
by ray.wurlod
A routine can be run by multiple processes at once. However, the sequence is only one process that executes the code on the Job Control tab in its job properties.

You could have it (the sequence) start multiple sub-sequences each invoking the routine. Sub-sequences are forked as child processes of the controlling sequence.