[ 
https://issues.apache.org/jira/browse/ARROW-10784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17242503#comment-17242503
 ] 

Antoine Pitrou commented on ARROW-10784:
----------------------------------------

What you're describing shouldn't happen. Python has per-module import locks 
besides the GIL.
As documented though, an exception is made for circular imports: 
https://docs.python.org/3.3/library/imp.html?highlight=imp#imp.lock_held

> [Python] Loading pyarrow.compute isn't thread safe
> --------------------------------------------------
>
>                 Key: ARROW-10784
>                 URL: https://issues.apache.org/jira/browse/ARROW-10784
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Python
>    Affects Versions: 2.0.0
>            Reporter: Micah Kornfield
>            Priority: Major
>             Fix For: 3.0.0
>
>
> When using Arrow in a multithreaded environment it is possible to trigger an 
> initialization race on the pyarrow.compute module when calling Array.flatten.
>  
> Flatten calls _pc() which imports pyarrow compute but if two threads call 
> flatten at the same time is possible that the global initialization of 
> functions from the registry will be incomplete and therefore cause an 
> AttributeError.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to