Date: 02-21-2007 Subject: Patch RELEASE 9.1E Runtime Files These release notes pertain to the following programs or files: SUNFM.EXE 9.1E 21 Feb 2007 9,1,5,0 *============================================================================== The following files have been changed as follows: ------------------------------------------------------------------------------- SUNFM - Added a new keyword named 'FM_LONGKEEPALIVE={minutes}' that can be placed into the [environment] section of the SUNFM CFG file. This keyword can be specified to give the time duration to be used for long keepalive operations by the file manager. This keyword has a minimum value of 3 minutes. If this keyword is not specified, then the default long keepalive time is 60 minutes. This keyword takes affect when any new child thread is created by the file manager. This means that this keyword can be changed at any time after the file manager is loaded and it will take affect. - Corrected problems when the client runtime caused the keepalive messages to be suspended and the client runtime process was terminated prematurely. If a PLB program executes one of the following instructions while a file variable is opened via the SUNFM file manager and keepalives are being used, then the keepalive messages are suspended for a maximum of 3600 seconds by default or the time specified by the 'FM_LONGKEEPALIVE' keyword. ALERT - MessageBox GETFNAME - OPEN/PREP Dialog PRTOPEN - PRINT Dialog PRTPLAY - PRINT Dialog PRTCLOSE - PRINT Dialog or PRINT Preview SPLOPEN - PRINT Dialog OPEN - OPEN Dialog PREPARE - PREP Dialog IO Error Dialog (Untrapped) - MessageBox The problem was that a SUNFM child thread would continue to keep any managed files opened for an extended period of time if the client runtime process was prematurely terminated using an OS Task Manager. In this case, the corrective action is to allow the SUNFM child thread to terminate within the time specified by the 'FM_KEEPALIVE=nnn' keyword if a connection recovery action is initiated. - Corrected problems where a SUNFM child thread was not detecting the WATCH utility command to close the child thread while SUNFM was attempting to recover a connection with a client runtime. With this corrective action, a SUNFM child thread a WATCH close command causes the managed file variables to be closed and the SUNFM child thread is terminated in a logical manner. **************WARNING*************** If the WATCH utility is used and the SUNFM child thread is 'aborted', then the child thread is terminated immediately and the resources for the child thread are NOT cleaned up. Any files that were opened by the SUNFM child thread will remain opened until the SUNFM main logon process is terminated. This WATCH command should only be used under very special situations! **************WARNING****WARNING*********** Under NO circumstances should files be closed by OS utilities while the SUNFM file manager has the files opened. If files are ever closed in this manner, then the SUNFM file manager process can become unstable and indeterminate execution can occur. - Modified to prevent potential GPF/SEGV errors that might occur after the PLB ADMCOMMAND instruction was used to kill a child thread with the $ADMCMDHARDTERM command. - Corrected a problem where an IFILE operation that required an isam key to be deleted from the ISI file could cause indeterminate results when the key length was larger than 114 bytes. The indeterminate results could be unexplained program errors that could include I60 errors. Also, indeterminate results might cause GPF/SEGV errors. Some PLB instructions like DELETED, DELETEDK, and FILELIST IO instructions were more likely to cause this problem depending on the layout of the keys in the ISI file. - Corrected a problem when the SPLOPEN instruction attempted to create a spool file at the SUNFM file manager. This problem would cause the SUNFM child thread to give a GPF/SEGV error. The PLB program would get an I81 subcode 9 or 14 error when the SPLOPEN was executed. This problem has existed in all prior 9.1 versions. - Corrected a problem where the popup menu for the file manager shell icon in the system tray did not disappear when another window was activated. The file manager shell icon only appears in the system icon tray when the ADMIN_SHELLICON keyword is set to an ON state. -------------------------------------------------------------------------------