Home
TeamSite
Workflow not executing external task perl scripts
Mashuk
Hi,
I am having trouble with workflows that we have migrated from our Production machine to the backup machine. The problem is that the external task perl scripts do not execute and the scripts just hang. The workflow does instantiate as, I can see the job in the To-Do list.
At first, I thought the path to iwperl, or the path to the perl script was wrong, but this is not the case, as I can execute, the perl script on the Unix command line by doing the following
iwhome/iw-perl/bin/iwperl /script_to_execute.ipl JobID TaskID Workarea
I have checked the iwjoberrors.log and have found numerous occurrences of the following
[Thu Mar 4 00:10:21 2004] Could not run /data/software/iw/iw-home/iw-perl/bin/iwperl /data/software/iw/iw-home/local/config/wft/bt/branch/externalcmds/lock.ipl for task 518734; retrying in 1 minute
I have checked the Unix permissions to see if there are execute permissions on the perl script, and this is so. In the workflow itself, the perl scripts are executed by the same user as the one who executed the perl script on the command line.
Has anyone experienced this problem before?
Thanks
Mashuk
Find more posts tagged with
Comments
Adam Stoller
Have you checked permissions on all the directories leading up to the location of your script?
Check other logfiles too - like /var/adm/iwui/error_log - and see if there is any additional diagnostic information there?
Try replacing the script with an overly simplistic script that simply does a callback ...
Unfortunately this kind of problem tends to be bound pretty closely with the environment in which it is occurring, and therefore it makes it difficult for those of us, outside the environment, to accurately pinpoint the problem.
--fish
Senior Consultant, Quotient Inc.
http://www.quotient-inc.com
Mashuk
The permissions seem ok on all directories leading up to the perl script location. I created a script which just does a callback. Again this script does not get executed by the workflow, however like before, I can execute the callback script on the unix prompt!
I couldnt find anything in the /var/adm/iwui/error_log which relates to this problem.
Im not really too sure about the inner workings of the workflow engine, but does that need to be configured in any way to get the perl script to execute?
Mashuk
Adam Stoller
Was TeamSite properly installed by someone with root access? (generally it is better to *be* root than to *sudo*, but I believe sudo should work)
Does the iwui user account have access through the directories to the script?
Has someone accidently removed (or messed up permissions [777]) on IWHOME/tmp/cci ?
You should probably open a case with Support - run their diagnostic script and upload it - if you manage to find the answer before they do you can always close the case - but ...
--fish
Senior Consultant, Quotient Inc.
http://www.quotient-inc.com
nipper
Just for fun, try to execute the perl script by hand.
cd $iw-home/custom/bin
./script.ipl
(if this is on unix)
Your error should be something like this:
Task 0 does not exist.
ERROR:00920: Object being looked up was not found
If not, post the error
ANdy
Mashuk
TeamSite was installed under root conditions, and the IWHOME/tmp/cci does have the 777 permissions. As far as I can tell iwui can access the directories to the script.
Although I ddi notice the uid of iwui being significantly higher than on the iwui user the production machine. Would this have any impact on running perl scripts?
nipper
>Although I ddi notice the uid of iwui being significantly higher than on the iwui user the production machine. Would this have any impact on running perl scripts?
The UID value makes no difference. < 10 is usually reserved for system logins. SOme apps have problems > 65K.
The only case where this would make a difference is if you copied file that were owned by iwui.
ONe more point. I have seen this problem before. Even though perms were 777, scripts I ran from iwui would not work. I fixed it by making iwui part of the group who owns those directories. Usually iwui is part of nobody.
To check this out:
go to prod and run:
groups iwui
then from it from your dev server.
HTH
Andy
tecthis
If the script is excecution, then all that is missing is a callback. Your script needs to call back the workflow and tell it its complete. Do you currently have a callback, if not let me know, i can send you some code.
A...
Alexander Correaa
alex_correa@baxter.com
mgal
What is the version of TeamSite and if any sp's are installed what is the version of sp?
Mashuk
Just to let you know, resolved this issue after a detour to IW Tech Support. It seems like a file within SP3 was corrupted, and this could not invoke the perl script within a workflow.
We had to re-install SP3 and now it works fine.