VAX/VMS V4.6 UPDATE ACTIONS CHECKLIST
		-------------------------------------

			     Chris Doran

			  Computer Manager,
	     Sira Ltd., South Hill, Chislehurst, Kent, BR7 5EH
	     Tel: 01 467 2636, Telex: 896649, Fax: 01 467 6515

These notes are based on experience in upgrading from VAX/VMS V4.5 to V4.6. I
started making them for my own benefit, to group together in one place all
those things which need to be done on a future update. Therefore, in many
places, they are peculiar to our site (marked *), or are version-specific (#).
However, there is sufficient generality that they may provide a useful
checklist for other sites and later updates. Ours is a very basic system -- no
DECnet or clusters -- so no actions related thereto are included.

Having come up through the hard school of RSX, I am probably more meticulous
than most in recording what is going on on the system -- I even keep a record
of every system file and what has happened to it (started back in the days when
Software Dispatch contained patches to apply).

The remarks in this file apply to even-numbered (major) updates. For
odd-numbered (minor) updates, see UPDATE_V4_7.TXT. Unless and until DEC start
doing things differently, I will supply these files in pairs.

INITIAL PREPARATIONS
--------------------
  a) Read the Release Notes, update this checklist for any relevant actions
     recommended.

  b) Save SYS$MANAGER:SYLOGIN.COM	COPY to .OLDCOM
		      SYSTARTUP.COM	COPY to .OLDCOM
		      SYCONFIG.COM	COPY to .OLDCOM
		      SYSHUTDWN.COM	COPY to .OLDCOM
	     SYS$HELP:HELPLIB.HLB	LIBRARY/COMPRESS to .OLDHLB
*		      EDTHELP.HLB	LIBRARY/COMPRESS to .OLDHLB
*	   SYS$SYSTEM:TERMTABLE.TXT	COPY to .OLDTXT

     Despite what VMSINSTAL says, the old versions of the four files in
     SYS$MANAGER are NOT preserved. The point about using LIBRARY/COMPRESS
     rather than COPY is that if there aren't any changes, you can put back
     the .OLDHLB and save some disk space in one operation.

  c) Do an ANALYZE/BAD on a TU58 cartridge if you will need one (e.g. 11/750).
     This saves waiting for it to be done by VMSINSTAL. The cartridge doesn't
     seem to be required to be error-free, just BADded.

  d) Use the VMSINSTAL G option to get the mandatory update save set(s) onto
     disk from tape, if you have enough disk space. This saves slow tape
     operations during the real VMSINSTAL:-

	$ CREATE/DIRECTORY DUA0:[VMSMUP046]
	$ @SYS$UPDATE:VMSINSTAL VMSMUP046 MTA0: OPTIONS G DU:[VMSMUP046]

     Note that you can't pre-load the big VMS046 kit this way, because it
     has saveset filetypes which do not match what VMSINSTAL's G option
     expects. (This applies to even numbered updates only -- odd-numbered ones
     CAN be pre-loaded.)

IMMEDIATELY BEFORE RUNNING VMSINSTAL
------------------------------------
  A) To save the accounting and error log files:
	$ RENAME SYS$MANAGER:ACCOUNTNG.DAT;* .OLDDAT
	$ RENAME SYS$ERRORLOG:ERRLOG.SYS;* .OLDSYS

  B) Use SYSGEN or AUTOGEN to modify system parameters as instructed in the
     Release Notes (p1-7 ff).

  C) Shut down and reboot the system.

THE BIG VMSINSTAL
-----------------
  i) Set VAX (11/750) console switches to POWER ON ACTION = RESTART
					  BOOT DEVICE     = A (DECtape)
 ii) $ SET LOGINS/INTERACTIVE=0

iii) $ RUN SYS$SYSTEM:SYSGEN
     SYSGEN> AUTOCONFIGURE ALL
     SYSGEN> EXIT

 iv) Note free space and fragmentation on the system disk, for later
     comparison.

* v) $ @SYS$UPDATE:VMSINSTAL VMS046 MTA0: OPTIONS L
     The L option gets VMSINSTAL to tell you what it's doing, which helps
     record-keeping and working out what it has done to your own modifications.
     Note on the hardcopy listing any special actions you needed, or any
     especially long pauses, which may get you worried next time. For example,
     the "Start directory clean up" in phase I took 50 minutes!

*vi) $ @SYS$UPDATE:VMSINSTAL VMSMU0046 MTA0:

vii) Note how long it all took (4 hours), for next time. (It's embarassing to
     be thrown out by the Security lockup patrol at a strategic moment, leaving
     the users to come in next morning to an unusable system!)

IMMEDIATELY AFTER VMSINSTAL
---------------------------
  I) Merge changes to files in SYS$MANAGER:-
     SYS$MANAGER:SYLOGIN.COM	was unchanged, delete .OLDCOM
		 SYSTARTUP.COM	was replaced by dummy, use .OLDCOM
		 SYCONFIG.COM	was unchanged (dummy), delete .OLDCOM
		 SYSHUTDWN.COM	was replaced by dummy, use .OLDCOM

 II) ANALYZE/DISK/REPAIR/COMFIRM on the system disk to find any lost etc. files
     produced by VMSINSTAL (see previous correspondence in "Global Pages" on
     this matter).

III) Re-enable logins -- remaining operations can be carried out with users
     on the system.

AFTER VMSINSTAL
---------------
  1) @SYS$UPDATE:LIBDECOMP, to decompress libraries. This took ~1hour on an
     11/750 with an RA81. It should probably really be done with no users on
     the system, but I did it with them on, with no problems/complaints.

  2) DELETE or PURGE files that VMSINSTAL doesn't, as recommended in the
     Release Notes and VMSINSTAL printout:-

     DELETE SYS$SYSTEM:STARTUP.UPS,UPGRADE.KIT	see Release Notes p1-26
     PURGE SYS$SYSTEM:STARTUP.COM		see VMSINSTAL text
     PURGE SYS$HELP:HELPLIB.HLB			" (but no purge necessary)
     PURGE SYS$LIBRARY:DCLTABLES.EXE		"
     PURGE SYS$LIBRARY:IMAGELIB.OLB		" (but no purge necessary)
     PURGE SYS$LIBRARY:LBRSHR.EXE		"
     PURGE SYS$LIBRARY:STARLET.OLB		" (but no purge necessary)
     PURGE SYS$MANAGER:RTTLOAD.COM		"
     PURGE SYS$MANAGER:STARTNET.COM		"
     PURGE SYS$LIBRARY:CDDSHR.EXE		"
     PURGE SYS$LIBRARY:ENCRYPSHR.EXE		"
     PURGE SYS$LIBRARY:UISSHR.EXE		"
     PURGE SYS$SYSTEM:VAXVMSSYS.PAR		see Release Notes

     As noted in the bracketed comments, DEC don't always get this list right,
     so it is worth looking for any other files in the SYS$ directories. (See
     my OLD.COM file on the UK SIG tapes for a quick way to do this).

  3) Check sizes of SYS$SYSTEM:SYSDUMP.DMP
			       PAGEFILE.SYS
			       SWAPFILE.SYS, see Release Notes p1-26

* 4) Create new SYS$LIBRARY:*.H's for (Whitesmiths' C), using TOWH.COM.

  5) Reinstall FORTRAN to (just) create new FORSYSDEF.TLB.

# 6) Check conflicts between VMSIMAGES.DAT and SYSTARTUP.COM, see Release
#    Notes p1-25.
#    See if anything is now installed by the new VMSIMAGES.DAT which you don't
#    need installed. Removing these things saves you GBLSECTIONs and
#    GBLPAGEs (the things you have to check/increase when adding a layered
#    product) and hence reduces the memory unnecessarily grabbed by VMS.
#    The most likely candidates are libraries and messages for languages you
#    don't have. Watch, though, that VMS isn't using them -- VMS and its
#    utilities are written in several different languages, so they need the
#    runtime libraries and message files even if you don't. The correct way
#    to find out is to do an ANALYZE/IMAGE on EVERYTHING in SYS$LIBRARY and
#    SYS$SYSTEM (and probably elsewhere). The lazy way is to remove everything
#    you THINK you won't need and wait for complaints! This is not ideal,
#    because some things seem to work (but presumably less efficiently) even
#    if the shared images they require aren't installed.
#    Since we mustn't touch VMSIMAGES.DAT, if you want to remove something, do
#    it in SYSTARTUP.COM. On our system, it has proved safe to:-
#	$ INSTALL:=$INSTALL/COMMAND
#	$ INSTALL
#	DELETE SYS$SYSTEM:SHWCLSTR	! We don't have a cluster
#	DELETE SYS$SYSTEM:VPM
#	DELETE SYS$SHARE:ADARTL		! or ADA
#	DELETE SYS$SHARE:VAXCRTL	! or DEC C
#	DELETE SYS$SHARE:VAXCRTLG
#	DELETE SYS$MESSAGE:NETWRKMSG	! or networks
#	DELETE SYS$SHARE:COBRTL		! or COBOL
#	DELETE SYS$SHARE:PASRTL		! or DEC Pascal
#	DELETE SYS$SHARE:RPGRTL
#	DELETE SYS$MESSAGE:PASMSG
#	DELETE SYS$MESSAGE:PLIMSG	! or PL/1
#	DELETE SYS$MESSAGE:RPGMSG	! or RPG
#	EXIT

# 7) Check SYS$SYSTEM:OLDSITEn.DAT's vs MODPARAMS.DAT, see Release Notes p1-25

  8) Build new STABACKITs on system disk and TU58:
	$ @SYS$UPDATE:STABACKIT SYS$SYSDEVICE:		! for system disk
	$ @SYS$UPDATE:STABACKIT CSA1:			! for console TU58
     The system disk version takes less than a minute; the TU58 version takes
     ? hours, ans must be done when the 11/750 is relatively idle, because of
     documented poor performance of its console drive!

# 9) Check whether IO$M_RESET is used in any special drivers (not in PCDRIV),
#    and reassemble if so -- Release Notes p3-14.

#10) Find type numbers for any new terminals (VT300_series in V4.6) by doing:-
#	$ SET TERMINAL/DEVICE=VT300_series
#	$ WRITE SYS$OUTPUT F$GETDVI("TT:","DEVTYPE")		! (112)
#    Get identify sequence from SYS$SYSTEM:SMGTERMS.TXT item device_attributes.
*    Note sequence in HELP text Terminal_IDs (and various other identify
*    sequences now added by DEC to SMGTERMS.TXT).

*11) Rebuild TERMTABLE.EXE, to put back any user-defined terminals. Add
*    your own REQUIREs into DEC's new TERMTABLE.TXT, and do:-
*	$ RUN SYS$SYSTEM:SMGBLDTRM
*    Reboot the system to install the new TERMTABLE.EXE.
*    Do a $ WRITE SYS$OUTPUT F$GETDVI("TT:","DEVTYPE") on each of your new
*    terminals, to get the type numbers allocated. These may vary between
*    builds of the table, and the value you get when installing a table locally
*    for testing by DEFINing TERM$TABLOC is different to that which you get
*    when the table is installed as the general system default. Values start at
*    181/246 (local/general) and work down, i.e. the first user-defined terminal
*    in TERMTABLE.TXT is 181/246, the second is 180/245, etc.. Modify any
*    command procedures and programs that depend on their literal values, and
*    those of any new DEC terminals discovered in step (10):
*    Bonner RUNOFF, SYS$MANAGER:SYLOGIN.COM, SYS$COMMAND:CLS.COM, CLG.COM,
*    PLOT10.COM, DRAWTREE.COM, HP2648A.COM, SYS$INSTRUCTION:DISPLAY.FOR and
*    CAI.COM.

 12) Check for any unwanted deletions from HELPLIB.HLB -- there weren't any --
     however, you may wish by now to delete the NewFeatures_V44 topic.
*    LIBRARY/DELETE=ENCRYPT HELPLIB.HLB, so that users can access our own
*    encryption image help information in SIRAHELP.HLB.

*13) Update EDTHELP.HLB, by adding language-specific modules from old version
*    (AT,BASIC,CLANG,CORAL,DCL,FORTRAN,MACRO,MACRO11,PASCAL,PLOT,SAL),
*    adding our extended control definitions to the KEYPAD VT52 sub-topic.

 14) Check all system directories to see what new files have appeared, and
     see if they are interesting (maybe containing some undocumented features
     -- try SYS$HELP:WP.HLB). Note any files which were used by previous VMS
     versions, and not replaced this time (if this is an even-numbered update).
     These latter may have become obsolete. If you can guess where they might
     have belonged, use the undocumented SET WATCH FILES/CLASS=ALL command
     (turned off by SET WATCH FILES/CLASS=NOALL) and invoke the suspected
     utility. (See Notes sequence 684 in "Pageswapper" V9 No2 et seq for
     details of SET WATCH.) If you can't guess (or to be sure even if you can)
     RENAME them to [SYSLOST], and delete them in six months if no-one
     complains. I found three %%%SECINI.GBL files in SYS$LIBRARY which were
     part of VAXTPU, and weren't deleted when the filetypes changed in V4.4.
     (See V4.4 Release Notes Section 2.1.4.2). Another thing to look for while
     you are about it is a SYS$SYSTEM:PRTSMB.DMP which occasionally gets left
     when a despooler exits abnormally, and can always be deleted.

 15) TRUNCATE all files in SYS$EXAMPLES, SYS$HELP, SYS$LIBRARY, SYS$MANAGER,
     SYS$MESSAGE, SYS$SYSTEM, SYS$TEST, and SYS$UPDATE. This can save a bit of
     space (1562 blocks on our V4.6 system), especially with some small
     libraries which DEC leave at their 100 block default file creation size.
     (Well, DEC are in the business of selling disks, aren't they?)
     TRUNCATE *.*;* in each directory seems safe. Ignore messages about files
     whose structure prevents them being truncated (NOTRUNC), or are open
     (e.g. installed) at the time (ACCONFLICT). Don't forget that TRUNCATE
     changes the file revision dates (even if no truncation was required), so
     don't do it before your daily incremental backup, unless you want it to
     become a full disk backup!

 16) DELETE files and directories created for distribution kits in (d) above:-
	$ DELETE DU:[VMSMUP046]*.*;*,DU:[000000]VMSMUP046.DIR;1

 17) DELETE *.JNL files from the SYS$* directories, and any .TXT or
     .RELEASE_NOTES update descriptions from SYS$UPDATE, if you don't want them.

 18) Check free space and fragmentation and compare with (iv). If free space is
     wildly different, check the SYS$ directories for any huge files created
     or deleted, remembering in the latter case that ACCOUNTNG.DATs and
     ERRLOG.SYS files have been purged (unless you renamed them -- see (A)).

 19) Update all the manuals as instructed in the Release Notes. Yes, I know
     it's a fiddly process involving typing, photocopying, cutting, and pasting,
     but sooner or later someone (most probably you) will be caught out by a
     correction you didn't insert.

 20) No matter how insistent DEC are that "all relevant sections of the V4.n-1
     Release Notes have been copied to the V4.n notes", DO NOT throw away the
     old ones: (a) they are lying, and (b) you may need to know when a change
     or new feature appeared. Also for reason (b), move the old Software
     Product Description to the back of the V4.n-1 Release Notes. Since with
     V4.6 we got a whole new binder to put Release Notes in, perhaps DEC are
     after all acknowledging that we shouldn't throw them away.

 22) Check all bugs known on the previous system version. If they've gone or
     changed, note the details on your SPR copy. Check any bugs not yet
     SPRed (I wait if I know a new release is due shortly). SPR them now if
     they haven't gone.

 23) Check any new manuals received against the list of errors found in the
     old version. Send in Readers Comments pages for any still not fixed.

OVER SEVERAL WEEKS
------------------
Run system monitor to see if any tuning parameters need changing. The first
surprise was that the "Memory permanently allocated to VMS" reported by SHOW
MEMORY, has actually gone DOWN!