On May 25, 2010, at 9:59 AM, Les Mikesell wrote: > On 5/25/2010 11:44 AM, David Brodbeck wrote: >> >> On May 24, 2010, at 2:05 PM, Les Mikesell wrote: >> >>> On 5/24/2010 3:51 PM, David Brodbeck wrote: >>>> >>>> On May 21, 2010, at 8:23 AM, Hyrum K. Wright wrote: >>>>> Actually, Subversion is a bit more intelligent about it, attempting to >>>>> use modification times and sizes, before doing a byte-by-byte comparison. >>>> >>>> Even that can be slow if there are lots of files involved. Note that some >>>> filesystems have particularly bad performance if there are lots of files >>>> in a single directory, as well. This is especially true of NFS. In one >>>> extreme example, I've seen a simple "ls" take tens of minutes to produce >>>> any output in an NFS-mounted directory with ~1,000,000 files. >>> >>> But to be fair, note that ls sorts its output, so it can't output anything >>> until it has read everything. >> >> True, but other operations were slow, too. The way readdir() works means >> that a lot of file operations inevitably involve a linear search of the >> directory. > > And worse, creating a new file involves doing that search first to see if it > is new, then finding a free slot or growing the directory and adding it all > as an atomic operation, blocking any other process trying to do the same. > But, that's why subdirectories were invented - you don't have to put > everything on one big inefficient space.
Yup. Now I just need to convince my users of that. ;) -- David Brodbeck System Administrator, Linguistics University of Washington