Print

Print


@ljanyst - nah, don't use the asynchronous XRootD API from python.

It's very deadlock prone due to lock ordering issues (the same reason it's tough / impossible to use the C++ client asynchronously in a C++ application - too many callbacks occur with different sets of locks held by the framework).

I haven't been able to put together a single application that uses the asynchronous API from python that doesn't have a deadlock.

Only use the multiprocessing module.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/xrootd/xrootd","title":"xrootd/xrootd","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/xrootd/xrootd"}},"updates":{"snippets":[{"icon":"PERSON","message":"@bbockelm in #462: @ljanyst - nah, don't use the asynchronous XRootD API from python.\r\n\r\nIt's very deadlock prone due to lock ordering issues (the same reason it's tough / impossible to use the C++ client asynchronously in a C++ application - too many callbacks occur with different sets of locks held by the framework).\r\n\r\nI haven't been able to put together a single application that uses the asynchronous API from python that *doesn't* have a deadlock.\r\n\r\nOnly use the `multiprocessing` module."}],"action":{"name":"View Issue","url":"https://github.com/xrootd/xrootd/issues/462#issuecomment-282304269"}}}

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