duplicate entries on ext3 when using readdir/readdir64
Thomas Trauner
tt at it-austria.net
Tue Aug 5 10:53:51 UTC 2008
On Fri, 2008-08-01 at 08:16 -0400, Theodore Tso wrote:
> On Fri, Aug 01, 2008 at 11:43:40AM +0200, Thomas Trauner wrote:
> >
> > I have a problem with directories that contain more than 10000 entries
> > (Ubuntu 8.04.1) or with more than 70000 entries (RHEL 5.2). If you use
> > readdir(3) or readdir64(3) you get one entry twice, with same name and
> > inode.
> >
>
> How reproducible is this; can you reproduce it on this one filesystem?
> Can you reproduce it on multiple filesystems? What sort of file names
> are you using?
I made new tests with the code under
<http://www.unet.univie.ac.at/~a9100884/readdir.c> on a bunch of freshly
generated and empty filesystems, every about 38GB large, of type fat
(aborted after about 22000 entries because it took to long), ext2, xfs,
jfs and again ext3. All tests made with 2.6.24-19-generic (ubuntu
8.04.1).
I also tried minix fs, just for fun, but I could only create 126 files.
Ext3 shows the same effect as before, but at 103033 entries (readdir)
and 104136 entries (readdir64). 'ls|sort -n|uniq -d' output (ls uses
getdents64, so I asume it uses readdir64, but I don't checked the ls
source):
root at darfnix:/readdir/ext3/testdir# ls|sort -n|uniq -d
102456
root at darfnix:/readdir/ext3/testdir#
Can I do anything else?
Regards
Tom
More information about the Ext3-users
mailing list