2 Replies Latest reply on May 13, 2014 7:06 PM by Bill Robinson

    scriptutil hangs forever and if I kill it, entire for loop exits...

    Spike White



      I'm running a type 2 NSH job with a helper script.  Because I want all the output collated into a single *.csv file.  And at the end of the NSH script, I put it out on a web site, for general consumption.


      For that reason, I can't use a type 3 job.


      I'm passing in my server list via %f.  Std stuff.  Here's the main body of my type 2 job:


      for s in $SERVERLIST; do

        echo "SERVER:$s"

        scriptutil -h $s -s /bladelogic/scripts/msl_v2.sh >> /bladelogic/reports/linux_servers_v2.csv 2>&1



      However, on specific servers my helper script hangs forever.  Specifically, it hangs executing this command:


      /usr/bin/omreport chassis info


      Which mean my above NSH for loop hangs forever.  (unlike nexec, scriptutil does not have a timeout.)   


      On the BBSA app server on which this type 2 job executes, if I kill the scriptutil invocation then the entire for loop exits and it doesn't progress to the succeeding servers.


      [root@ausplbbsaap06 ~]# ps -ef | grep 13432

      bladmin  13432 13430  0 15:28 ?        00:00:00 scriptutil -h pensopbkdb02.pen.apac.dell.com -s /bladelogic/scripts/msl_v2.sh

      root     13707 32055  0 15:30 pts/2    00:00:00 grep 13432

      [root@ausplbbsaap06 ~]# kill 13432

      [root@ausplbbsaap06 ~]# ps -ef | grep 13432

      root     13903 32055  0 15:30 pts/2    00:00:00 grep 13432

      [root@ausplbbsaap06 ~]#


      This is in BBSA  Appears to be a change from previous behaviour.  I know previously (7.6?), we had a nanny script that would do a


      kill -9 $PID


      where PID was 13432 in the example above.  It would do this when it detected it was hung on a particular server.  And the for loop would continue to the next server in the server list.