Subject: ls : fails with a long list
From: <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>, <[email-masked]>
Date: Wed, 12 Mar 2003 08:21:58 -0000

~> uname -a
CYGWIN_NT-5.1 tin 1.3.20(0.73/3/2) 2003-02-08 12:10 i686 unknown unknown
Cygwin

If you can find somewhere on your system a directory with a "long" pathname
to it and containing "many" files then I think you will be able to replicate
this or something like it

~> ls -Al /usr/local/* | wc
     63     410    2966
~> ls -Al /usr/local/op/* | wc
   1445   12885   90987
~> ls -Al /usr/local/op/h/* | wc
   1807   16239  115236
~> ls -Al /usr/local/op/h/routines/* | wc
bash: /usr/bin/ls: Invalid argument
      0       0       0
~> ls -Al /usr/local/op/h/routines/[c-p]* | wc
   1024    9216   90033
~> ls -Al /usr/local/op/h/routines/[c-q]* | wc
bash: /usr/bin/ls: Invalid argument
      0       0       0

Sorry about the adjectives "long" and "many" -- I haven't been able to
specify precise thresholds here. The " | wc" pipe isn't relevant to what is
being reported here, it just shows the length of successful output.

So, if the pathname is short, ls successfully lists very many files. But of
the pathname is long, ls will not successfully list relatively few files
(1039 beginning [c-q] above).

I discovered this on a routine check of my resource. I do not perform this
check frequently, but have certainly done so in the past without tripping up
in the way just described, and when the resource checked was very similar if
not identical to today's.

Either this is a "bug" that has recently been introduced into the system or
... I can see that there can/ might/ should/ must be some internal limits
set on listlengths. If so it seems to me that these limits have recently
been lowered. Please could they be re-set to a previous higher value?

(I am sorry that what I have reported is so specific to my own resource. I
tried mimicking the problem under /usr/bin, quite heavily populated, but not
heavily enough as it turned out.)

Thank you.

Fergus

PS strace gives a 3.6 MB output file for [c-p] but is empty for [c-q].

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/