[OpenAFS] Max number of files in dir, but.
Jeffrey Hutzelman
jhutz@cmu.edu
Mon, 03 Oct 2005 16:42:49 -0400
On Friday, September 30, 2005 11:38:53 AM +0200 Jan Johansson
<janj+openafs@wenf.org> wrote:
> Hello.
>
> Could someone be so kind to tell me what I am missing here.
>
> :; pwd
> /afs/isk.kth.se/home/j/janjoha/isk/mail/trash/2005/09/cur
> :; ls | wc
> 31706 31706 988987
> :; ls | head -4
> 1125553784.15482_63.riker:2,S
> 1125553798.15482_66.riker:2,S
> 1125553842.15482_69.riker:2,S
> 1125553851.15482_73.riker:2,S
>
> :; touch foo-with-a-long-name
> touch: foo-with-a-long-name cannot create
>
> This is clear we have hit the limit max file names in a directory
> but
>
> :; touch foo
> :; touch bar
>
> Now I would have expected that 'touch bar' would fail but
> continuing with
>
> :; touch kaka
> :; touch farmoanka
> :; touch kalleanka
>
> still works.
A file with a name longer than 15 characters requires multiple
_consecutive_ entries in the same directory page. So, if your directory is
sufficiently fragmented and very full, it may be possible to create entries
with short names but not with long names. If your existing files mostly
have names just over 15 characters long, then you can probably create a
_lot_ of short filenames, because each directory page has an odd number of
entries available (the first entry is occupied by the page header).
-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA