Multi instance Sequence job failing
Moderators: chulett, rschirm, roy
Multi instance Sequence job failing
Hi All,
We have a multi instance sequence job. We are calling 12 instances at a same time. Every time few of instance (not the same every time) instance failing with following fatal error.
Calcom_Daily_Dataload_Master_Seq.GMO.JobControl (DSSendMail): Error when executing command: /texsrvr01/Ascential/DataStage/Projects/GTS_GLOBAL/sendmail_Calcom_Daily_Dataload_Master_Seq.sh
*** Output from command was: ***
SH: /texsrvr01/Ascential/DataStage/Projects/GTS_GLOBAL/sendmail_Calcom_Daily_Dataload_Master_Seq.sh: not found
If we run instance one by one, all the instance running fine. But if we run all the instances same time, the sequence job is failing at notification activity for sending success mail(rest of job running fine).
I did search the forum. But could not found any reasonable clue.
Thanks in advance.
We have a multi instance sequence job. We are calling 12 instances at a same time. Every time few of instance (not the same every time) instance failing with following fatal error.
Calcom_Daily_Dataload_Master_Seq.GMO.JobControl (DSSendMail): Error when executing command: /texsrvr01/Ascential/DataStage/Projects/GTS_GLOBAL/sendmail_Calcom_Daily_Dataload_Master_Seq.sh
*** Output from command was: ***
SH: /texsrvr01/Ascential/DataStage/Projects/GTS_GLOBAL/sendmail_Calcom_Daily_Dataload_Master_Seq.sh: not found
If we run instance one by one, all the instance running fine. But if we run all the instances same time, the sequence job is failing at notification activity for sending success mail(rest of job running fine).
I did search the forum. But could not found any reasonable clue.
Thanks in advance.
Last edited by swades on Mon Sep 22, 2008 11:45 am, edited 1 time in total.
That sounds like a bug that should be reported to your official support provider.
Each Notification Activity creates a shell script that it executes and then deletes. Sounds like all of the instances are using the same filename and depending on the timing, another instance deletes the script that some other instance is trying to run.
Each Notification Activity creates a shell script that it executes and then deletes. Sounds like all of the instances are using the same filename and depending on the timing, another instance deletes the script that some other instance is trying to run.
-craig
"You can never have too many knives" -- Logan Nine Fingers
"You can never have too many knives" -- Logan Nine Fingers
I would still report it as a bug if you haven't done so already.
Any way to consolidate the notifications? Have one master sequence that handles all other invocations and the emails, perhaps? You could also write your own email routine, invoke 'sendmail' or whatever you like with DSExecute(), it shouldn't have any kind of multiple instance issues that I can think of.
Any way to consolidate the notifications? Have one master sequence that handles all other invocations and the emails, perhaps? You could also write your own email routine, invoke 'sendmail' or whatever you like with DSExecute(), it shouldn't have any kind of multiple instance issues that I can think of.
-craig
"You can never have too many knives" -- Logan Nine Fingers
"You can never have too many knives" -- Logan Nine Fingers
Is there anything - I can change at project level and things work fine. What I am looking for is - take the control from DS and on the fly creates this shell script with invocation id in script name. So it will not conflict with other instance.We have few jobs already moved to production and facing this issue. So we would like to do minimum level of code change.
Is there anything - I can change at project level and things work fine. What I am looking for is - take the control from DS and on the fly creates this shell script with invocation id in script name. So it will not conflict with other instance.We have few jobs already moved to production and facing this issue. So we would like to do minimum level of code change.
No need to take that same scripted approach that the stage does. Look into the Routine Activity idea that I posted. Replace the Notification Activity stage with a Routine Activity stage that does the emailing. Should be simple enough to setup and won't have the multi-instance problem that you are seeing now.
You can use DSSendMail or execute your email client of choice (like sendmail) directly that way.
You can use DSSendMail or execute your email client of choice (like sendmail) directly that way.
-craig
"You can never have too many knives" -- Logan Nine Fingers
"You can never have too many knives" -- Logan Nine Fingers
Thanks Craig-
I have created below routine. This works fine for me, but still the question is if this routine called from routine activity in multi instance sequence job, might be two routine instances run at same time. Is this can be a problem?
I have created below routine. This works fine for me, but still the question is if this routine called from routine activity in multi instance sequence job, might be two routine instances run at same time. Is this can be a problem?
Code: Select all
Arg="From:":SenderMailId:"\nTo:":ReceptionMailId:"\nSubject:":JobStatus:": ":ProjectName:"-->":JobName:".":ErrorSource:" (":HostName:")\nBody:":BodyMessage
CALL DSU.DSSendMail(Arg,ErrorCode)
Ans = 0