According to Jeff's experience, cron jobs as non-phantoms hasn't caused 
problems, so that may be a red herring.  It wouldn't require a lot of work to 
try running the jobs as phantoms, though, so that's what I'd do if the problem 
still recurs after changing OFF to BYE.  At the very least, no terminating 
command is required for a phantom process to die off since it will do that by 
design when the program completes.

I'd suggest putting the contents of QUO9010.INPUT into a proc or paragraph that 
can be executed via a VOC entry, and changing the script execution to:

udt "PHANTOM QUO9010.VOC.ENTRY"

It sounds like the job is being run as a user that is also set up to run things 
interactively, so you'll have to put something in the user's VOC to immediately 
drop to TCL if the current process is a phantom.  All of our user's have a proc 
VOC entry that does the following before anything else:

0001: PQ
0002: RO
0003: RI
0004: HUSER.TYPE
0005: P
0006: IF A = phantom X

USER.TYPE is a 1 line BP that runs "PROCWRITE @TTY".  There are probably other 
ways to do this.  You might want to just create a new cron-only user that 
doesn't run a menu on login.  The other issue you'll have is capturing the 
output since it's going to go to the &PH& file by default (I'm assuming this is 
also true for UD).  You can use the DIVERT.OUT command at the beginning of the 
process to send the output to the QUO9010.RESULTS file.

-John

-----Original Message-----
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Israel, John R.
Sent: Tuesday, June 26, 2012 12:15 PM
To: 'U2 Users List'
Subject: Re: [U2] Runaway Jobs

No, not as phantoms.

Here are all the details:

In the crontab, we have a line of code like this:
22 02 * * 1 /usr/igi/avante96/flodata/live/LIVE.DATA/QUO9010 > /dev/null 2>&1

This will launch a script called QUO9010 and send any UNIX outputs to /dev/null 
(effectively ignoring it).  This script looks like this:
#!/bin/sh
# BAC 10-19-11
# Perform Quote Report of International Areas (QUO9010)
 
# RESET PROFILES
. /etc/profile
. ~/.profile

#setup for Unidata environment
UDTHOME=/usr/igi/ud
UDTBIN=/usr/igi/ud/bin
PATH=$PATH:/usr/igi/ud/bin
TERM=vt100
export UDTHOME UDTBIN PATH TERM
 
#change directory and run the report
cd /usr/igi/avante96/flodata/live/LIVE.DATA
echo "(QUO9010) Weekly Quote International Report Started..."
date
 
udt < /usr/igi/avante96/flodata/live/LIVE.DATA/QUO9010.INPUTS > 
/usr/igi/avante96/flodata/live/LIVE.DATA/QUO9010.RESULTS
 
echo "(QUO9010) Weekly Quote International Report Finished..."
date


The key here is that as it fires up udt, it will take inputs from a file called 
QUO9010.INPUTS and all output from that (UniData) will go into a file called 
QUO9010.RESULTS.

The QUO9010.INPUTS simply goes from the Avanté/SB menu to TCL, runs the report, 
displays the MUST.BE.LAST text we put at the end of all of these jobs, then run 
"off".

We are thinking that the "off" command is the problem.  OFF (or off) is a verb 
with a value of QUIT.  If I look at the VOC for QUIT, it is running:
001: C
002: /usr/igi/sb54/SB.DEFN/DMSH/_SH.OFF

We are thinking it might be the fact that it is running _SH.OFF and somehow 
getting messed up.  This morning, we changed one of our jobs from "off" to 
"BYE" to simply do a traditional exit from UniData.  Thus far, we have not had 
any problems, but the runaway condition is rare and random, so that does not 
mean much.  We are considering changing all the "off"s to "BYE", though we have 
not done so yet.

Thoughts?



John

_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to