[Top][All Lists]

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

Re: [To CVS-Dev] CVS Directory Order and sanity.sh

From: Larry Jones
Subject: Re: [To CVS-Dev] CVS Directory Order and sanity.sh
Date: Thu, 25 Jan 2001 17:23:37 -0500 (EST)

Derek R. Price writes:
> I'd prefer, "update: cannot open CVS/Entries for reading: .*No such file or
> directory\.?".  The more data you can include and still match both cases, the
> better.

I'll second that.

> (Is '?' valid?  I forget.  You might have to use \.* on the end there)

No, '?' isn't valid.

> > 2) It seems that quite often the order that files are processed is 
> > different on
> > MVS.  For example, in basicb-7, the output that is expected is:
> >  'T Emptydir/sfile1
> > T sdir2/sfile2'
> >
> > but on MVS it's:
> > 'T sdir2/sfile2
> > T Emptydir/sfile1'
> >
> > I am assuming that the change is due to a different collating sequence 
> > between
> > ASCII and EBCDIC.  My question is, shouldn't LC_COLLATE=C fix this?  I 
> > looked in
> > the opendir/readdir function descriptions on several different UNIX (UNII?) 
> > and
> > LINUX docs and none mention the order that these files/directories should be
> > listed, nor use of LC_COLLATE.

In general, readdir() returns entries in whatever order they are
physically stored in the directory, it does no sorting of any kind. 
Traditional Unix filesystems added entries in the first available slot
so, barring deletions, the order was simply the order of creation. 
Newer filesystems use more sophisticated schemes and thus return the
entries in what is essentially random order.  The test suite seems to
work correctly on these newer filesystems, so I think your problem is
something else.  (In the case of basicb-7, for example, I think the
subdirectories should be processed in the order they occur in
CVS/Entries, which should be the order they were added in.)  In cases
where the order is entirely random, sanity.sh uses dotest_sort to sort
the results into a predictable order.  If it turns out that the test
output *is* in random order and we've just been lucky and haven't
noticed it yet, then using dotest_sort instead of dotest is probably the
right solution.

-Larry Jones

See, it all makes sense.  See?  See??  They never see. -- Calvin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]