[ 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)