4gl runaway program uses all free memory
Posted in 2000
Topics: Connectivity: ESQL/C, 4GL & Embedded SQL, Server Administration
INFORMIX-4GL Run Time Facility Version 7.20.UD8
Copyright (C) 1984-1996 Informix Software, Inc.
Informix Dynamic Server Version 7.30.UC7
Copyright (C) 1986-1999 Informix Software, Inc.
INFORMIX-SQL Run Time Facility Version 7.20.UD8
Copyright (C) 1984-1996 Informix Software, Inc.
HpUx 10.20
Dual processor HPK200 512Mb RAM
I have a 4gl program I recently modified to use prepared SQL. The program
is run by many users constantly throughout the day, it shows a list of
outstanding support calls sorted by various criteria, this list is updated
every minute or so until the user quits the program.
Occasionally I am seeing runaway processes for this program, this appear to
be processes where the users telnet session has died. For these processes
onstat -g ses shows an ever increasing value for RALLOC. This causes theengine to eventually start adding more virtual segments with horrendous
results.
Both the engine and the apps run on the same machine so connections are all
shared memory.
Can someone please give me some pointers as to what is going on here? what
is RALLOC referring to? Short of changing the program back to using
embedded SQL or permanently using the script I've written to look for these
processes and kill then what can I do?
I can't even reliably recreate the problem, most of the time when I drop my
telnet session the 4gl program dies as it should.
Tony Flaherty
Snr. A/P, Informix DBA, HpUx Admin, Gimmi a broom!
MFS Ltd.
Are you perhaps running the programs from some sort of a shell script? (Of course you are, even if just .profile. Silly Me) Are you perhaps messing around with the trap command in the shell script? Something along the lines of ... trap : 1 2 3 fglgo yourapp.4gi I had a similar problem once (runaway processes coming from telnets not being shutdown correctly (usually because a PC crashed)). It went away when I removed the 1 from the above trap command. Sorry if this is completely on the wrong track, but when I saw "runaway" and "telnet" it just jogged my memory. Kevin
Thanks for the reply, we did initially have the trap "" 1 2 3 but I removed the 1. This problem is specific to 1 compiled 4gl program and has only started occurring since I modified it to use prepared statements instead of embedded SQL. I've fixed this short term by writing a script which looks for these "rogue" processes and kills them of. I'm running this from cron every half hour. This solutions sucks though :o( -- Tony Flaherty Snr. A/P, Informix DBA, HpUx Admin, Gimmi a broom! MFS Ltd. Kevin Golding wrote in message <39F8353F.62E1F2CB@webcom.com.au>... >Are you perhaps running the programs from some sort of a shell script? >(Of course you are, even if just .profile. Silly Me) >Are you perhaps messing around with the trap command in the shell >script? Something along the lines of ... >trap : 1 2 3 >fglgo yourapp.4gi > >I had a similar problem once (runaway processes coming from telnets not >being shutdown correctly (usually because a PC crashed)). >It went away when I removed the 1 from the above trap command. > >Sorry if this is completely on the wrong track, but when I saw "runaway" >and "telnet" it just jogged my memory. >Kevin
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g