[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Storing lispm files on Unix boxes vs Unix



    Date: Tue, 05 Jun 90 11:31:08 -0400
    From: magerman@linc.cis.upenn.edu


	 I was getting really upset at how many sources we didn't have for 8.0
	 until I found out what happened...

	 We stored most of the 8.0 sources on a Unix host (via NFS).  All was
	 fine and we had about 110MB of space used up by them (including the
	 layered products we have).   In the last few days, I had griped about
	 some sources not being there when I thought they should.  I'd go back to
	 7.2 sources and they'd be there.

	 Today I found some documentation files weren't there and I was quite
	 unhappy.  I then looked at how much room we were using on the Unix host
	 and found out it was only 3MB.

	 It turns out we run a program to delete "useless" files on our Unix host
	 (such as core, a.out :-).  One thing it deletes are files that end in
	 "~" (eg, Gnuemacs backup files) after 7 days without access.  *ALL* the
	 files stored under our rel-8-0.sct directory ended in that character
	 (ie, "foo.bar.~99~").

	 So, if you think about storing Lispm files on your Unix box, make sure you
	 don't get bit by this!  (Anybody have good solutions?  We're trying to
	 figure out what we want to do.  We've turned off deleting those files for
	 now.)

    For ILA-NFS, we had a simple patch for this problem:
	    (setf nfs::*unix-pseudoversion-prefix* ".")
	    (setf nfs::*unix-pseudoversion-suffix* "")
    This causes versioned files to appear in UNIX file systems as foo.bar.99
    instead of the foo.bar.~99~.  We found all the tildes to be downright
    offensive, so we just got rid of them.

    In NFS under Genera 7.4, I believe that redefining the constants
	    (defconst fs::*unix-version-prefix* ".")
	    (defconst fs::*unix-version-prefix* "")
    will accomplish the same goal.  I imagine the same hack will work for NFS under
    Genera 8.0.

But I think Mabry only wants to protect the files in his Symbolics
source hierarchies, not everywhere.  Ordinary backup files should
probably still be deleted by his scavenger.  Also, the above will cause
confusion if the same file is edited by Zmacs and GNU Emacs, since Emacs
uses the tildes in its backup filenames as well; you'd like them to use
the same version number sequence (although there's already some skew
because the Lispm doesn't create the foo~ file).

One thing you could do is change your deletion program to check whether
there's an unnumbered version of the file; e.g., only delete foo.~*~ if
foo exists.  This will delete true backup files, but in SCT hierarchies
all the files have explicit version numbers.

You could also keep the Symbolics sources on a dedicated file system,
and not run the backup file deleter on that file system.

                                                barmar