I'm not sure if this is a bug or a limitation that can be worked around with a setting somewhere, but I have found a problem with cygwin 1.7 while using rsync. I have been using rsync and cygwin v1.5 for quite some time. I recently started testing cygwin v1.7 and I ran into a problem with an apparent limit on the number of files cygwin 1.7 along with rsync can process in a directory. First let me say that I don't store this many files in a directory manually but rather we have a program that does.
I have not been able to identify the exact number of files, but it seems to be somewhere over 6,000 in a single directory. To help sort this out, I whipped up the following perl code that creates 9,000 dummy files and puts them in a c:\temp directory. Code is as follows if anyone would like to try and reproduce this: my $path="c:/temp/"; my $number_of_files=9000; my $base_file_name="file"; my $count=1; my $file_name = $path . $base_file_name . $count; while ($count <= $number_of_files) { open FILE, ">$file_name" or die $!; $count++; $file_name = $path . $base_file_name . $count; print FILE "asdfasdf"; close(FILE); } For those familiar with rsync, here are the options I am using in rsync and by the way, I am currently reproducing this by copying from and to the same workstation, however this same issue has been reproduced on more than one machine. This doesn't appear to be an rsync problem but just the same, I have tried several different options for rsync and none seem to make a difference. --recursive --human-readable --delete --times --ignore-errors --stats --progress -v -v If I then run rsync 3.0.5 using cygwin 1.7, the processor will spike to 100% utilization and it will process several thousand files before it just locks up with the processor still spiked at 100%. No errors are shown, it just hangs. If I then delete the directory I am using rsync to copy to and repeat the same procedure with the same version of rsync only this time using cygwin 1.5.25-15, the processor will again spike to 100% however the copy will finish as expected and everything returns to normal. Again, I have been able to repeat this on more than one computer. One more interesting thing. If I first using rsync and cygwin v1.5 to copy the files and THEN come back and use rsync and cygwin 1.7, it make it all the way through. See the attached cygcheck.out as per posting instructions. Note I have also tried this on machines with much stronger hardware with the exact same results. ALso note that the machine never runs out of memory so that doesn't appear to be the problem either. Is this a bug in cygwin 1.7 or is there some setting that will allow me to work around this limitation? Thank you. - Kyle
Cygwin Configuration Diagnostics Current System Time: Thu Jun 18 13:39:33 2009 Windows XP Professional Ver 5.1 Build 2600 Service Pack 3 Path: C:\WINDOWS\system32 C:\WINDOWS C:\WINDOWS\System32\Wbem Output from C:\cygwin_1.7\bin\id.exe (nontsec) UID: 10500(administrator) GID: 10513(Domain Users) 0(root) 544(Administrators) 545(Users) 10513(Domain Users) Output from C:\cygwin_1.7\bin\id.exe (ntsec) UID: 10500(administrator) GID: 10513(Domain Users) 0(root) 544(Administrators) 545(Users) 10513(Domain Users) SysDir: C:\WINDOWS\system32 WinDir: C:\WINDOWS Path = 'C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem' ALLUSERSPROFILE = 'C:\Documents and Settings\All Users' APPDATA = 'C:\Documents and Settings\Administrator.TRC\Application Data' CLIENTNAME = 'Console' CommonProgramFiles = 'C:\Program Files\Common Files' COMPUTERNAME = 'TEMP' ComSpec = 'C:\WINDOWS\system32\cmd.exe' FP_NO_HOST_CHECK = 'NO' HOMEDRIVE = 'C:' HOMEPATH = '\Documents and Settings\Administrator.TRC' LOGONSERVER = '\\TRCBT1' NUMBER_OF_PROCESSORS = '1' OS = 'Windows_NT' PATHEXT = '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH' PROCESSOR_ARCHITECTURE = 'x86' PROCESSOR_IDENTIFIER = 'x86 Family 6 Model 5 Stepping 2, GenuineIntel' PROCESSOR_LEVEL = '6' PROCESSOR_REVISION = '0502' ProgramFiles = 'C:\Program Files' PROMPT = '$P$G' SESSIONNAME = 'Console' SystemDrive = 'C:' SystemRoot = 'C:\WINDOWS' TEMP = 'C:\DOCUME~1\ADMINI~1.TRC\LOCALS~1\Temp' TMP = 'C:\DOCUME~1\ADMINI~1.TRC\LOCALS~1\Temp' USERDNSDOMAIN = 'TRCINTL.COM' USERDOMAIN = 'TRC' USERNAME = 'administrator' USERPROFILE = 'C:\Documents and Settings\Administrator.TRC' windir = 'C:\WINDOWS' HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\mounts v2 HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\Program Options HKEY_CURRENT_USER\Software\Cygwin HKEY_CURRENT_USER\Software\Cygwin\Program Options HKEY_CURRENT_USER\Software\Cygwin\setup HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs\Cygwin (default) = (unsupported type) HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2 (default) = '/cygdrive' cygdrive flags = 0x00000022 HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/ (default) = 'C:\cygwin' flags = 0x0000000a HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/bin (default) = 'C:\cygwin/bin' flags = 0x0000000a HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/lib (default) = 'C:\cygwin/lib' flags = 0x0000000a HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\Program Options HKEY_LOCAL_MACHINE\SOFTWARE\Cygwin HKEY_LOCAL_MACHINE\SOFTWARE\Cygwin\Program Options HKEY_LOCAL_MACHINE\SOFTWARE\Cygwin\setup (default) = 'C:\cygwin_1.7' obcaseinsensitive set to 1 a: fd FAT 1Mb 6% CP UN c: hd NTFS 8048Mb 68% CP CS UN PA FC d: cd N/A N/A z: net NTFS 547127Mb 58% CP CS UN PA FC Root C:\cygwin_1.7 / system binmode . /cygdrive user binmode,cygdrive,noacl,posix=0 Not Found: awk Not Found: bash Not Found: cat Not Found: cp Not Found: cpp (good!) Not Found: crontab Found: C:\WINDOWS\system32\find.exe Not Found: gcc Not Found: gdb Not Found: grep Not Found: kill Not Found: ld Not Found: ls Not Found: make Not Found: mv Not Found: patch Not Found: perl Not Found: rm Not Found: sed Not Found: ssh Not Found: sh Not Found: tar Not Found: test Not Found: vi Not Found: vim 61k 2009/03/02 .\cygbz2-1.dll - os=4.0 img=1.0 sys=4.0 "cygbz2-1.dll" v0.0 ts=2009/3/1 21:11 40k 2009/03/01 .\cygform-8.dll - os=4.0 img=1.0 sys=4.0 "cygform-8.dll" v0.0 ts=2009/3/1 0:32 41k 2009/03/27 .\cygform-9.dll - os=4.0 img=1.0 sys=4.0 "cygform-9.dll" v0.0 ts=2009/3/27 0:02 42k 2009/03/12 .\cyggcc_s-1.dll - os=4.0 img=1.0 sys=4.0 "cyggcc_s-1.dll" v0.0 ts=2009/3/6 5:54 315k 2009/06/06 .\cyggmp-3.dll - os=4.0 img=1.0 sys=4.0 "cyggmp-3.dll" v0.0 ts=2009/6/6 6:23 24k 2008/11/29 .\cyghistory6.dll - os=4.0 img=1.0 sys=4.0 "cyghistory6.dll" v0.0 ts=2008/11/29 8:30 270k 2009/05/07 .\cygicons-0.dll - os=4.0 img=1.0 sys=4.0 "cygicons-0.dll" v0.0 ts=2009/5/6 19:58 981k 2009/05/30 .\cygiconv-2.dll - os=4.0 img=1.0 sys=4.0 "cygiconv-2.dll" v0.0 ts=2009/5/30 14:05 31k 2005/11/20 .\cygintl-3.dll - os=4.0 img=1.0 sys=4.0 "cygintl-3.dll" v0.0 ts=2005/11/19 20:04 31k 2009/04/03 .\cygintl-8.dll - os=4.0 img=1.0 sys=4.0 "cygintl-8.dll" v0.0 ts=2009/4/2 20:15 5k 2009/06/08 .\cyglsa.dll - os=4.0 img=1.0 sys=4.0 "cyglsa.dll" v0.0 ts=2009/6/8 15:14 9k 2009/06/08 .\cyglsa64.dll - os=4.0 img=0.0 sys=5.2 21k 2009/03/01 .\cygmenu-8.dll - os=4.0 img=1.0 sys=4.0 "cygmenu-8.dll" v0.0 ts=2009/3/1 0:31 21k 2009/03/27 .\cygmenu-9.dll - os=4.0 img=1.0 sys=4.0 "cygmenu-9.dll" v0.0 ts=2009/3/27 0:01 211k 2009/06/06 .\cygmp-3.dll - os=4.0 img=1.0 sys=4.0 "cygmp-3.dll" v0.0 ts=2009/6/6 6:23 66k 2009/03/01 .\cygncurses++-8.dll - os=4.0 img=1.0 sys=4.0 "cygncurses++-8.dll" v0.0 ts=2009/3/1 0:39 334k 2009/03/27 .\cygncurses++-9.dll - os=4.0 img=1.0 sys=4.0 "cygncurses++-9.dll" v0.0 ts=2009/3/27 0:12 237k 2009/03/01 .\cygncurses-8.dll - os=4.0 img=1.0 sys=4.0 "cygncurses-8.dll" v0.0 ts=2009/3/1 0:28 164k 2009/03/27 .\cygncurses-9.dll - os=4.0 img=1.0 sys=4.0 "cygncurses-9.dll" v0.0 ts=2009/3/26 23:58 11k 2009/03/01 .\cygpanel-8.dll - os=4.0 img=1.0 sys=4.0 "cygpanel-8.dll" v0.0 ts=2009/3/1 0:30 11k 2009/03/27 .\cygpanel-9.dll - os=4.0 img=1.0 sys=4.0 "cygpanel-9.dll" v0.0 ts=2009/3/27 0:00 190k 2009/04/17 .\cygpcre-0.dll - os=4.0 img=1.0 sys=4.0 "cygpcre-0.dll" v0.0 ts=2009/4/17 11:07 7k 2009/04/17 .\cygpcreposix-0.dll - os=4.0 img=1.0 sys=4.0 "cygpcreposix-0.dll" v0.0 ts=2009/4/17 11:07 22k 2002/06/09 .\cygpopt-0.dll - os=4.0 img=1.0 sys=4.0 "cygpopt-0.dll" v0.0 ts=2002/6/9 0:45 155k 2008/11/29 .\cygreadline6.dll - os=4.0 img=1.0 sys=4.0 "cygreadline6.dll" v0.0 ts=2008/11/29 8:30 66k 2009/03/27 .\cygtic-9.dll - os=4.0 img=1.0 sys=4.0 "cygtic-9.dll" v0.0 ts=2009/3/26 23:54 64k 2009/03/02 .\cygz.dll - os=4.0 img=1.0 sys=4.0 "cygz.dll" v0.0 ts=2009/3/1 19:33 2376k 2009/06/08 .\cygwin1.dll - os=4.0 img=1.0 sys=4.0 "cygwin1.dll" v0.0 ts=2009/6/8 15:13 Cygwin DLL version info: DLL version: 1.7.0 DLL epoch: 19 DLL old termios: 5 DLL malloc env: 28 Cygwin conv: 181 API major: 0 API minor: 210 Shared data: 5 DLL identifier: cygwin1 Mount registry: 3 Cygwin registry name: Cygwin Program options name: Program Options Cygdrive default prefix: Build date: Mon Jun 8 22:13:39 CEST 2009 Shared id: cygwin1S5 61k 2009/03/02 C:\cygwin_1.7\bin\cygbz2-1.dll - os=4.0 img=1.0 sys=4.0 "cygbz2-1.dll" v0.0 ts=2009/3/1 21:11 40k 2009/03/01 C:\cygwin_1.7\bin\cygform-8.dll - os=4.0 img=1.0 sys=4.0 "cygform-8.dll" v0.0 ts=2009/3/1 0:32 41k 2009/03/27 C:\cygwin_1.7\bin\cygform-9.dll - os=4.0 img=1.0 sys=4.0 "cygform-9.dll" v0.0 ts=2009/3/27 0:02 42k 2009/03/12 C:\cygwin_1.7\bin\cyggcc_s-1.dll - os=4.0 img=1.0 sys=4.0 "cyggcc_s-1.dll" v0.0 ts=2009/3/6 5:54 315k 2009/06/06 C:\cygwin_1.7\bin\cyggmp-3.dll - os=4.0 img=1.0 sys=4.0 "cyggmp-3.dll" v0.0 ts=2009/6/6 6:23 24k 2008/11/29 C:\cygwin_1.7\bin\cyghistory6.dll - os=4.0 img=1.0 sys=4.0 "cyghistory6.dll" v0.0 ts=2008/11/29 8:30 270k 2009/05/07 C:\cygwin_1.7\bin\cygicons-0.dll - os=4.0 img=1.0 sys=4.0 "cygicons-0.dll" v0.0 ts=2009/5/6 19:58 981k 2009/05/30 C:\cygwin_1.7\bin\cygiconv-2.dll - os=4.0 img=1.0 sys=4.0 "cygiconv-2.dll" v0.0 ts=2009/5/30 14:05 31k 2005/11/20 C:\cygwin_1.7\bin\cygintl-3.dll - os=4.0 img=1.0 sys=4.0 "cygintl-3.dll" v0.0 ts=2005/11/19 20:04 31k 2009/04/03 C:\cygwin_1.7\bin\cygintl-8.dll - os=4.0 img=1.0 sys=4.0 "cygintl-8.dll" v0.0 ts=2009/4/2 20:15 5k 2009/06/08 C:\cygwin_1.7\bin\cyglsa.dll - os=4.0 img=1.0 sys=4.0 "cyglsa.dll" v0.0 ts=2009/6/8 15:14 9k 2009/06/08 C:\cygwin_1.7\bin\cyglsa64.dll - os=4.0 img=0.0 sys=5.2 21k 2009/03/01 C:\cygwin_1.7\bin\cygmenu-8.dll - os=4.0 img=1.0 sys=4.0 "cygmenu-8.dll" v0.0 ts=2009/3/1 0:31 21k 2009/03/27 C:\cygwin_1.7\bin\cygmenu-9.dll - os=4.0 img=1.0 sys=4.0 "cygmenu-9.dll" v0.0 ts=2009/3/27 0:01 211k 2009/06/06 C:\cygwin_1.7\bin\cygmp-3.dll - os=4.0 img=1.0 sys=4.0 "cygmp-3.dll" v0.0 ts=2009/6/6 6:23 66k 2009/03/01 C:\cygwin_1.7\bin\cygncurses++-8.dll - os=4.0 img=1.0 sys=4.0 "cygncurses++-8.dll" v0.0 ts=2009/3/1 0:39 334k 2009/03/27 C:\cygwin_1.7\bin\cygncurses++-9.dll - os=4.0 img=1.0 sys=4.0 "cygncurses++-9.dll" v0.0 ts=2009/3/27 0:12 237k 2009/03/01 C:\cygwin_1.7\bin\cygncurses-8.dll - os=4.0 img=1.0 sys=4.0 "cygncurses-8.dll" v0.0 ts=2009/3/1 0:28 164k 2009/03/27 C:\cygwin_1.7\bin\cygncurses-9.dll - os=4.0 img=1.0 sys=4.0 "cygncurses-9.dll" v0.0 ts=2009/3/26 23:58 11k 2009/03/01 C:\cygwin_1.7\bin\cygpanel-8.dll - os=4.0 img=1.0 sys=4.0 "cygpanel-8.dll" v0.0 ts=2009/3/1 0:30 11k 2009/03/27 C:\cygwin_1.7\bin\cygpanel-9.dll - os=4.0 img=1.0 sys=4.0 "cygpanel-9.dll" v0.0 ts=2009/3/27 0:00 190k 2009/04/17 C:\cygwin_1.7\bin\cygpcre-0.dll - os=4.0 img=1.0 sys=4.0 "cygpcre-0.dll" v0.0 ts=2009/4/17 11:07 7k 2009/04/17 C:\cygwin_1.7\bin\cygpcreposix-0.dll - os=4.0 img=1.0 sys=4.0 "cygpcreposix-0.dll" v0.0 ts=2009/4/17 11:07 22k 2002/06/09 C:\cygwin_1.7\bin\cygpopt-0.dll - os=4.0 img=1.0 sys=4.0 "cygpopt-0.dll" v0.0 ts=2002/6/9 0:45 155k 2008/11/29 C:\cygwin_1.7\bin\cygreadline6.dll - os=4.0 img=1.0 sys=4.0 "cygreadline6.dll" v0.0 ts=2008/11/29 8:30 66k 2009/03/27 C:\cygwin_1.7\bin\cygtic-9.dll - os=4.0 img=1.0 sys=4.0 "cygtic-9.dll" v0.0 ts=2009/3/26 23:54 64k 2009/03/02 C:\cygwin_1.7\bin\cygz.dll - os=4.0 img=1.0 sys=4.0 "cygz.dll" v0.0 ts=2009/3/1 19:33 2376k 2009/06/08 C:\cygwin_1.7\bin\cygwin1.dll - os=4.0 img=1.0 sys=4.0 "cygwin1.dll" v0.0 ts=2009/6/8 15:13 Cygwin DLL version info: DLL version: 1.7.0 DLL epoch: 19 DLL old termios: 5 DLL malloc env: 28 Cygwin conv: 181 API major: 0 API minor: 210 Shared data: 5 DLL identifier: cygwin1 Mount registry: 3 Cygwin registry name: Cygwin Program options name: Program Options Cygdrive default prefix: Build date: Mon Jun 8 22:13:39 CEST 2009 Shared id: cygwin1S5 Warning: There are multiple cygwin1.dlls on your path Can't find the cygrunsrv utility, skipping services check. Cygwin Package Information Last downloaded files to: C:\Documents and Settings\Administrator.TRC\Desktop Last downloaded files from: ftp://mirror.mcs.anl.gov/pub/cygwin/ Package Version _update-info-dir 00823-1 alternatives 1.3.30c-10 ash 20040127-4 base-cygwin 2.0-1 base-files 3.8-3 base-passwd 3.1-1 bash 3.2.48-21 bzip2 1.0.5-10 coreutils 7.0-2 cygutils 1.4.0-1 cygwin 1.7.0-49 cygwin-doc 1.5-1 editrights 1.01-2 findutils 4.5.4-1 gawk 3.1.6-2 grep 2.5.3-1 groff 1.19.2-2 gzip 1.3.12-2 ipc-utils 1.0-1 less 429-1 libbz2_1 1.0.5-10 libgcc1 4.3.2-2 libgmp3 4.3.1-3 libiconv2 1.13-10 libintl3 0.14.5-1 libintl8 0.17-11 libncurses8 5.5-10 libncurses9 5.7-14 libpcre0 7.9-1 libpopt0 1.6.4-4 libreadline6 5.2.13-11 login 1.10-10 man 1.6e-1 rebase 3.0-2 rsync 3.0.5-1 run 1.1.10-1 sed 4.1.5-2 tar 1.22-1 termcap 20050421-1 terminfo 5.7_20090228-10 terminfo0 5.5_20061104-10 texinfo 4.13-3 tzcode 2008h-1 which 2.20-2 zlib0 1.2.3-10 Use -h to see help about each section
-- 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/