[Python-3000] io deadlock, use of RLock, issues 3618 & 3001 thoughts
Antoine Pitrou
solipsis at pitrou.net
Thu Aug 21 12:09:44 CEST 2008
Gregory P. Smith <greg <at> krypto.org> writes:
>
> http://bugs.python.org/issue3618 is a release blocker due to deadlock
> in the io library.
>
> and the related C RLock implementation in
[etc.]
By the way, please note using an RLock will just solve the deadlock bug. It
won't make the behaviour of write() and friends absolutely correct if called
recursively, rather than lose or duplicate chunks of bytes. Those functions are
not meant to be reentrant at all.
Which means, perhaps another way of solving the bug would be to ensure tracing
is disabled when entering those functions. Are there cases of reentrancy apart
from tracing? signals and other asynchronous stuff perhaps?
Regards
Antoine.
More information about the Python-3000
mailing list