>> From: "Dave Korn" <[EMAIL PROTECTED]> >> To: <cygwin@cygwin.com> >> Date: Fri, 22 Jul 2005 11:47:40 +0100 >> Subject: RE: Known issues with Pthreads in 1.5.18? >> The default type of mutex just got changed, from error checking, to >> normal. If your code is setting up a default mutex and then one thread >> attempts to recursively take the mutex, it will now deadlock where before it >> would have succeeded. Or it may be possible your code is unlocking the >> mutex more times than it takes it, which would probably show the same >> symptom. See the thread starting at: >> >> http://www.cygwin.com/ml/cygwin/2005-05/msg01298.html >> >> and the announcment for 1.5.18 >> >> http://www.cygwin.com/ml/cygwin-announce/2005-07/msg00001.html >> >> in particular the line that says >> >> "cgf: Change default value for PTHREAD_MUTEX_DEFAULT to PTHREAD_NORMAL." >> >> >> cheers, >> DaveK
Unfortunately that seems to have borked Python 2.4. I found that out the hard way after returning from a week offline, I just upgraded everything to 1.5.18 and as a result dequeuing operations stopped blocking and started getting "temp. unavailable" errors. No, I didn't bother saving the messages nor the configuration. Going back to older versions was a huge pain (at least when using setup.exe because an accidental/exploratory click could cause a newer version of a package to be selected which would prereq 1.5.18 again.. anyways)... Since I don't have a second machine to infect with 1.5.18, I cannot directly re-produce this. My code used Python threads, one consumer, one producer. Instead of the consumer blocking, it would get an error trying to get a mutex, "resource temporarily unavailable." I have no idea if this is a bug in the python Queue code, python threading, or just an unexpected side-effect of changing mutex behaviour. Scanning the archives it didn't seem obvious that anyone else had seen this... Since I'm not in a position to "fix this myself", I can offer to exchange toy python programs with someone who can, in an effort to track down where the bug is originating. Thanks, --Doug -- 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/