Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <42FB51FF.3000000@byu.net> Date: Thu, 11 Aug 2005 07:26:23 -0600 From: Eric Blake User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Rsync over SSH dies before it is able to send with lots of files References: <42FA081C DOT 25957 DOT 24F4EADF AT localhost> <42FA2A6A DOT 29370 DOT 257AEDF0 AT localhost> <42F9FC86 DOT 8060602 AT byu DOT net> In-Reply-To: <42F9FC86.8060602@byu.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 According to Eric Blake on 8/10/2005 7:09 AM: > > I still want to figure out why you were getting a crash. I tried the > following: > > $ cd /tmp > $ mount -m > ... > mount -f -s -b -X "c:/cygwin/bin" "/bin" > $ mkdir lots > $ # 45000 invocations of touch is slow, so do 10 files at a time... > $ for i in `seq 4500` ; do echo $i ; touch longfilename${i}0 > longfilename${i}1 longfilename${i}2 longfilename${i}3 longfilename${i}4 > longfilename${i}5 longfilename${i}6 longfilename${i}7 longfilename${i}8 > longfilename${i}9 ; done > $ echo /cygdrive/c/cygwin/tmp/lots/* > ... # Works, echo is a builtin > $ /bin/echo /cygdrive/c/cygwin/tmp/lots/* > ... # Works for me, since my /bin is mounted executable > $ /cygdrive/c/cygwin/bin/echo /cygdrive/c/cygwin/tmp/lots/* > bash: /cygdrive/c/cygwin/bin/echo: Argument list too long Aha - I found something. When I first ran the touch command above, I stopped at about 8000 files (or about 400k for the subsequent echo command line), which gave the nice "Argument list too long" error. But when I increased the number of files to 45000 (or about 2 meg of command line), the same command failed with a segfault with bash 3.0, and gave no input but left $? at 5 (matching EIO) on the alpha bash 3.1. I will have to try debugging it now, but it seems odd that exec() is dying with E2BIG in one case and EIO when the input is even bigger. - -- Life is short - so eat dessert first! Eric Blake ebb9 AT byu DOT net -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (Cygwin) Comment: Public key at home.comcast.net/~ericblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFC+1H/84KuGfSFAYARAiovAJ9IuLP3/pDLOqZtbgbkFjCBqCZxFwCfeQN3 0wyZqocreHY1Yq6O4orh42A= =wels -----END PGP SIGNATURE----- -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/