This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Cygwin deadlocks due to broken select() when writing to pipes

Thank you Bob Byrnes for this info and analysis. Perhaps it will result
in a solution to a long simmering problem. I use cygwin VERY
aggressively. A cron job launches a 20,000 line perl script (not
including CPAN modules by other authors) that does complex network
automation tasks via multiple chained telnets and ftps. (Eventually to
use ssh). Cron launches this script every five minutes and multiple
instances share resources managed by semaphores. cgf wasn't even
remotely in the mood for endorsing cygwin for this kind of 'abuse' (not
his exact words). Nevertheless, for "the most part" it works
extraordinarily well. My biggest headache is - occasional DEADLOCKS.
About once or twice a day a bash process attempting to start an ftp
instance will hang - and freeze everything clear up to the perl parent
process that launched it. Perl itself even hangs and stops writing
output to log files and the terminal. The deadlock situation will last
indefinitely until I do a kill -9 and terminate the last bash shell
launched by the perl script. Then,
every other process associated with the parent perl script "comes back
to life". I am not a c/c++ programmer. My expertise is in Perl - and
there it shall remain. I spent a couple hours a few weeks ago trying to
incorporate strace into the mix I run, but it turned out to be a really
complicated undertaking - so I gave up on it. So I apologize for
effectively offering nothing more than a BIG "me too!!". That said .....


Brian Kelly

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]