Print

Print


When synchronous operations are performed, the python GIL should be
dropped using the async macro. Otherwise, the following deadlock
can occur:
a) A python thread, holding the GIL, may call out to a XrdCl::File
object, which takes an XRootD-related lock.
b) A XrdCl callback thread, holding an XRootD-related lock, tries
to invoke a python callback and tries to acquire the GIL.

Since the python GIL is not needed to invoke an XrdCl operation,
this patch drops it for case (a), avoiding the deadlock.


You can view, comment on, or merge this pull request online at:

  https://github.com/xrootd/xrootd/pull/329

Commit Summary

File Changes

Patch Links:


Reply to this email directly or view it on GitHub.



Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1