todd@CINCOM.UMD.EDU.UUCP (07/30/86)
My complements to those who responded (correctly) so quickly to yesterday's query. Here is a summary, for those who were at all curious... Problem: While attempting to read from certain files from within a FORTRAN program (for simulations), the current process was unexpectedly deleted. No logout message was delivered, and the termination status in the accounting was SS$_NORMAL. The problem was consistent, in that attempting to read the same file at a later date would end in the same situation (process deletion). Cause: The principle suggestion I received was that certain errors in EXEC mode could cause a NON-FATAL BUGCHECK, which results in immediate process deletion. I quickly ran to ANALYZE/ERROR/INCLUDE=BUGCHECK, and lo and behold, there it was! My process was experiencing non-fatal bugchecks. The reason: "RMSBUG, RMS has detected an invalid condition". So I quickly ran to ANALYZE/RMS on the file in question, and lo and behold, VBN 1 had an invalid record terminator (or some such). So RMS choked on this file that apparently had a bad or missing end-of-record. Incidentally, the file was created with GNU Emacs, and there was no line-feed after the last line in the file in question. I added a line feed (go to the end of the last line, then type ^N), looked at the file with ANALYZE, and the problem was gone. Morals of the story: If you are using GNU Emacs, it might save some head- scratching to make certain there is a line-feed at the end. If this problem involves sufficiently many people, perhaps Emacs will be modified to add the final record terminator. If you start losing processes, look in the system error log for BUGCHECKs. I've heard so far of only one other way to lose the process, and that is a $EXIT in kernel mode (so I hear). Thanks, guys! Todd Aven Systems Engineering, Inc. ------