On Fri, Aug 18, 2000 at 02:04:43AM -0700, Veronica Lee wrote:
> 1) After we moved the repository over, some files are missing.  At a
> closer look, these files were not missing.  Instead, these files were
> changed from, e.g. CommunicationsManager.java,v to
> CommunicationsManager.java,v0100444.  This made these files invisible
> to CVS.  I moved the repository over by taring the entire repository
> and ftped it over to the new box.  There are about 100+ files in this
> repository but only 6 of them were impacted across 5 different
> directories.
> 
> What do you think caused this?  Is this an existing bug?

Yes -- in your "tar".  I have a particular tar file (a software distribution)
that does this when I unpack it with Solaris tar (from Solaris 2.6).
When I unpack the same file with GNU tar, it instead lops off the last character
of the filename.  Eg.: Solaris tar gives me:
        
jrun/jsm-default/services/jws/htdocs/jsp/apidocs/com.livesoftware.jrun.plugins.ssi.ITagableData.html0100644
GNU tar gives me:
        
jrun/jsm-default/services/jws/htdocs/jsp/apidocs/com.livesoftware.jrun.plugins.ssi.ITagableData.htm

This only happens with pathnames exactly 100 characters long, as
stored in the tar file.  Looks like a boundary condition that
both tar's get wrong in different ways.  (Or else it's the tar that
*wrote* the file that got it wrong...)


> 2) Very recently a bigger catastrophe occurred.  The entire CVSROOT
> folder was gone, which made the entire repository inaccessible. 
> Moreover, 10+ files were missing.

I can't offer much here except to say that this is not something
I've *ever* seen CVS do!

Actually, there's another bug in GNU tar 1.12 (fixed in 1.13),
that is exercised by the same tar file as mentioned above.  I
doubt it's responsible for your problem (especially regarding
CVSROOT), but I'll describe it just in case.

GNU tar 1.12 also screws up extracting pathnames strictly greater
than 100 characters long: it loses the directory portion, and
puts the file in the directory from which it was run.  Eg. the
file which should be extracted to:
        
jrun/jsm-default/services/jws/htdocs/jsp/apidocs/com.livesoftware.jrun.plugins.jsp.JSPAbortException.html
instead gets put in:
                                                       
./com.livesoftware.jrun.plugins.jsp.JSPAbortException.html

--

|  | /\
|-_|/  >   Eric Siegerman, Toronto, Ont.        [EMAIL PROTECTED]
|  |  /
Nobody ever got fired for buying Microsoft -- but they could get
fired for relying on Microsoft.
        - Chris Garrigues

Reply via email to