Mail Archives: cygwin/2005/02/03/11:06:27
I finally got enough time to track down this issue, and
it comes down to a perl issue. Seems that a perl script is
creating the file, but it isn't doing a close on the file, so it's
making the file hang around a bit too long (like maybe
it's a race condition of NTFS).
Anyway, I patched the perl script with an appropriate close (IN....)
statement, and the issue/bizareness goes away.
On Thu, 23 Dec 2004 13:40:12 -0700, Mark Paulus wrote:
>I have this really wierd/Bizarre situation, and wonder
>if anyone else has stumbled upon this:
>I have set /usr/src to be a managed link and it's located
>at c:\cygmanaged\src
>I have a directory /usr/src/cygwin-equivs/cygwin-base
>and under it there are some additional directories.
>the thing thats causing me some wierd grief is that
>fhandler_disk_file::readdir is telling me about a file that it sees
>that DOES NOT exist. And, it only does it when in a
>grandparent directory. This causes find to exit with:
> strace --mask=all --output=strace.out find . -type f -a \( -name \#\*\#
>-o -name \*\~ -o -name DEADJOE -o -name \*.orig -o -name \*.rej -o -name \*.bak
>-o -name .\*.orig -o -name .\*.rej -o -name .SUMS -o -name TAGS -o -name core -o
> \( -path \*/.deps/\* -a -name \*.P \) \) -print
>find: ./debian/README.Debian.in: No such file or directory
>I have modified fhandler_disk_file::readdir to print an additional output
>line, and here is the snippet that I'm referring to:
> 42 1666103 [main] find 6456 fhandler_disk_file::opendir: 0x100B3DA8 = opendir (/usr/src/cygwin-equivs/cygwin-base/equivs/debian)
> 192 1666295 [main] find 6456 fhandler_disk_file::readdir: actually got '.'
> 49 1666344 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (.)
> 66 1666410 [main] find 6456 fhandler_disk_file::readdir: actually got '..'
> 38 1666448 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (..)
> 44 1666492 [main] find 6456 fhandler_disk_file::readdir: actually got '%52%45%41%44%4D%45.%44ebian'
> 41 1666533 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (%52%45%41%44%4D%45.%44ebian)
> 41 1666574 [main] find 6456 fhandler_disk_file::readdir: actually got '%52%45%41%44%4D%45.%44ebian.in'
> 40 1666614 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (%52%45%41%44%4D%45.%44ebian.in)
> 159 1666773 [main] find 6456 fhandler_disk_file::readdir: actually got 'changelog'
> 43 1666816 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (changelog)
> 41 1666857 [main] find 6456 fhandler_disk_file::readdir: actually got 'control'
> 38 1666895 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (control)
> 40 1666935 [main] find 6456 fhandler_disk_file::readdir: actually got 'copyright'
> 52 1666987 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (copyright)
> 40 1667027 [main] find 6456 fhandler_disk_file::readdir: actually got 'docs'
> 38 1667065 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (docs)
> 40 1667105 [main] find 6456 fhandler_disk_file::readdir: actually got 'rules'
> 38 1667143 [main] find 6456 fhandler_disk_file::readdir: 0x100B3DAC = readdir (0x100B3DA8) (rules)
> 88 1667231 [main] find 6456 fhandler_disk_file::readdir: 0x0 = readdir (0x100B3DA8)
> 44 1667275 [main] find 6456 fhandler_disk_file::closedir: 0 = closedir (0x100B3DA8)
> 121 1667396 [main] find 6456 closedir: 0 = closedir (0x22EAA8)
>What's so bizarre is that the file README.Debian.in DOES NOT exist.
>C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian>dir
> Volume in drive C has no label.
> Volume Serial Number is B8DA-46B4
> Directory of C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian
>12/23/2004 01:26 PM <DIR> .
>12/23/2004 01:26 PM <DIR> ..
>12/23/2004 01:26 PM 770 %52%45%41%44%4D%45.%44ebian
>12/23/2004 01:26 PM 137 changelog
>12/23/2004 01:26 PM 326 control
>12/23/2004 01:26 PM 939 copyright
>12/23/2004 01:26 PM 0 docs
>12/23/2004 01:26 PM 1,100 rules
> 6 File(s) 3,272 bytes
> 2 Dir(s) 11,870,830,592 bytes free
>C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian>attrib
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\%52%45%41%44%4D%45.%44ebian
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\changelog
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\control
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\copyright
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\docs
>A C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian\rules
>C:\cygmanaged\src\cygwin-equivs\cygwin-base\equivs\debian>
>Does anyone have any idea where FindNextFileA is getting this extra file from?
>Oh yeah, if I do this very same command down one directory, it works as expected, and does not
>return the extra file. Go Figure.
>--
>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/
--
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/
- Raw text -