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

Re: (reiserfs) Re: Fwd: Reiserfs and shlibs

On Tue, 07 Dec 1999, Wichert Akkerman wrote:
>Previously Hans Reiser wrote:
>> No, definitely not, it would be a change to Unix semantics.
>We could probably argue about that.. so far reiserfs is the first
>filesystem I have encountered that does this reordiring.

ReiserFS intentionally orders directories by design.  Other file systems such
as SGI's XFS and the Veritas VXfs also index directories, I am not certain if
they also store files in the order that they were created in.  I would
appreciate it if someone could run some tests on XFS or Veritas file systems
to test these things.

Also it should be noted that Ext2 does not store files in the order that they
were created in.  When creating a file Ext2 stores the file in the first spot
in the directory that contains enough room.  I have attached a script run on
the Ext2 file system (you should be able to get exactly the same results from
any 2.2.13 kernel running Ext2) to show this.
In the attached file you will notice that "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa" is
created before "z" and yet appears later in the directory.  NB Due to padding
issues I could have made the file "aa" and got the same results.

Of course if you create a new directory in Ext2 then you can rely on the
files being in creation order as long as you never delete a file from the
directory or rename a file to change the length of it's name.  This is a
really bad thing to rely on when doing software development as you never know
when one of your tools is going to create a file named "tmp-lnk-xxxx.foo" and
rename it to it's destination name when it's finished (one could argue that a
well written compiler or other tool should always do this).

The ultimate result is that some innovations that would truly benefit
consumers never occur for the sole reason that they do not coincide with
Microsoft's self-interest.
-- Judge Thomas Penfield Jackson, U.S. District Judge
Script started on Tue Dec  7 14:29:30 1999
rjc@lyta:/tmp$mkdir a
rjc@lyta:/tmp$cd a
rjc@lyta:/tmp/a$touch a
rjc@lyta:/tmp/a$touch b
rjc@lyta:/tmp/a$touch c
rjc@lyta:/tmp/a$ls -f
.  ..  a  b  c
rjc@lyta:/tmp/a$rm a
rjc@lyta:/tmp/a$touch aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
rjc@lyta:/tmp/a$touch z
rjc@lyta:/tmp/a$ls -f
.  ..  z  b  c	aaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Script done on Tue Dec  7 14:29:59 1999

Reply to: