[OpenAFS] Linux client and find command in AFS
Jeffrey Hutzelman
jhutz@cmu.edu
Tue, 05 Apr 2005 15:24:29 -0400
On Tuesday, April 05, 2005 15:03:30 -0400 Rodney M Dyer <rmdyer@uncc.edu>
wrote:
> At 01:49 PM 4/5/2005, Derrick J Brashear wrote:
>> use the -noleaf option to find. it's not an afs bug, so you found no bug.
>
> Actually, why isn't this a bug? He doesn't need the -noleaf option if
> there is at least one other "real" directory in the root of the directory
> he is testing.
What -noleaf does is disable a GNU find optimization in which find looks at
the link count of a directory, and then only stats things to see whether
they are directories until it has found the number of directories it
expects. AFS mount points are not counted in the link count of the
directory containing them, so find gets confused and thinks there are fewer
directories than there really are.
This optimization depends on a property of the unix filesystem which does
not always apply on other filesystems. If there's a bug, it's that GNU
find uses this optimization without knowing for certain that it will work
on the filesystem in use.
-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA