This is the mail archive of the
mailing list for the Cygwin project.
Re: Slow manipulation of network-shared files
- From: Reini Urban <rurban at x-ray dot at>
- To: cygwin at cygwin dot com
- Date: Fri, 5 Feb 2010 23:20:10 -0600
- Subject: Re: Slow manipulation of network-shared files
- References: <firstname.lastname@example.org>
2010/2/5 Chap Harrison:
> This is wordy but I've tried to make it clear :-)
Its completely clear, thanks.
> I have a Perl app running in Cygwin 1.7.1, whose job is to monitor the log
> files being written by a Java program on another Windows Server 2003 box
> elsewhere on the LAN. ?(I'm using the CPAN File::Tail module, which provides
> 'tail -f' functionality, to monitor the log.)
> The actual I/O is fine. ?File::Tail responds very quickly to new data being
> written by the Java program to the log files in the shared folder on the
> The Perl app watches for log messages from the Java program that say, in
> effect, "I just closed file foo.txt". ?It then moves foo.txt into another
> However, it is frequently the case that the Perl program cannot move
> (File::Move) the file - sometimes even after trying 5 times at one-second
> intervals. ?My suspicion is that the file is slow to be seen as officially
> "closed" by all interested parties.
Correct. Closing or deleting a file is insanely from by the windows
compared to other systems.
I usually have to wait 30ms until I can move the file away.
> And even when the Java program has halted, and has presumably closed all the
> files it created, but has not yet been "Quit" from the GUI, the Perl program
> is glacially slow to move the remaining files. ?What's more, at this point
> any other bash shells I'm running in Cygwin become almost completely
> unresponsive, even just moving the cursor.
5s looks more like a race. But I have no idea what could cause the race.
Could be that Java is still holding the handle until the gc frees it.
But I have
no idea about java, only lisp.
> When I quit the Java app from its GUI, everything instantly returns to
> I'm guessing this has something to do with concurrency control over
> network-shared resources (the output files Java wrote and I'm trying to
> Just to add another layer of complexity, the Cygwin host OS (WinServer 2003)
> is running as a virtual machine hosted by a real box running WinServer 2003
> and Virtual Server 2005.
> Any explanations, solutions, or workarounds?
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple