Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!cmcl2!rutgers!sunybcs!boulder!hao!noao!stsci!itkin
From: itkin@stsci.EDU (Elliot Itkin)
Newsgroups: comp.sys.amiga
Subject: Re: The Next Generation
Message-ID: <124@ra>
Date: Thu, 3-Dec-87 16:26:07 EST
Article-I.D.: ra.124
Posted: Thu Dec  3 16:26:07 1987
Date-Received: Mon, 7-Dec-87 06:29:12 EST
References: <5294@ccicpg.UUCP> <2803@cbmvax.UUCP> <516@mcdsun.UUCP> <586@trwspf.TRW.COM>
Organization: Space Telescope Science Institute, Baltimore, MD 21218
Lines: 14
Summary: A non-backup use for versions


Versions have another use, to prevent losing a file if the system dies
at a crucial moment.  If you don't have versions and the system should
crash just as you are overwriting your old copy, you will lose both the
old copy (half trashed) and the new one (only half written).  By using
the sequence:  1)  write new file out to open disk space, 2) update
directory, 3) delete old file (with appropriate substeps), no matter
when you crash you will either have the old one, the new one or both.
This use of versions was used by Univac way back when.  The VAX "no
version limit" is new.  It is also faster than the ".bak" method
because you only write the file once, not read-write (old to .bak) then
write out new, which is three file traversals.  You can achieve the
same results by ping-ponging two files but which is the most current if
you forget?