home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / database / informix / 1922 < prev    next >
Encoding:
Internet Message Format  |  1992-09-13  |  2.0 KB

  1. Path: sparky!uunet!ogicse!das-news.harvard.edu!das!bochner
  2. From: bochner@das.harvard.edu (Harry Bochner)
  3. Newsgroups: comp.databases.informix
  4. Subject: Re: Endless loops on abstract quitting?
  5. Message-ID: <1992Sep10.182540.7181@das.harvard.edu>
  6. Date: 10 Sep 92 18:25:40 GMT
  7. Article-I.D.: das.1992Sep10.182540.7181
  8. References: <5295@krafla.rhi.hi.is>
  9. Sender: usenet@das.harvard.edu (Network News)
  10. Organization: Aiken Computation Lab, Harvard University
  11. Lines: 31
  12.  
  13. In article <5295@krafla.rhi.hi.is>, gaukur@rhi.hi.is (Kristjan Gaukur 
  14. Kristjansson) writes:
  15. |> My system is I-OnLine 4.1 with I-4GL RDS on an IBM R-6000 320 AIX 3.1 with
  16. |> users coming in through ethernet.  Now sometimes when they quit abstractly
  17. |> (like turning off the terminal/computer without quiting the system or breaking
  18. |> out with ctrl-c or somesuch) the 'fglgo' process goes into an endless loop
  19. |> eating up all the cpu it can get.
  20.  
  21. I used to have this problem a lot. I don't know if my experience under SunOS
  22. applies to what you're seeing under AIX, but maybe it will help.
  23.  
  24. In my environment, when a user gets disconnected, the processes get sent a
  25. SIGHUP.  Now, the Informix libraries have a signal handler for SIGHUP that shuts
  26. things down neatly, just the way you would want. The problem is that (at least
  27. under 2.10.03, which is what I was running when I had this problem) this signal
  28. handler doesn't seem to be active all the time. My impression was that the
  29. handler was active when the form-handling library routines were waiting for
  30. input, but not otherwise (i.e. while calculations or SQL calls are taking place).
  31.  
  32. In my particular case, I had a program that, for obscure reasons, called a C
  33. function to read from the terminal, bypassing the Informix libraries. If the user
  34. got disconnected while this program was waiting for input, it would loop
  35. endlessly, eating up CPU time in the way Kristjan describes. I rewrote the
  36. program so that all the IO went through the Informix libraries, and the
  37. problem disappeared.
  38.  
  39. Hope this helps,
  40.  
  41. -- 
  42. Harry Bochner
  43. bochner@das.harvard.edu
  44.