Inokinoki commented on issue #40088:
URL: https://github.com/apache/arrow/issues/40088#issuecomment-2861415514

   > [@Inokinoki](https://github.com/Inokinoki) I understand the explanation 
you give there, but it seems unexpected to me that there would be confusion 
between two private-linked static libraries. Especially as Python [uses the 
default 
`RTLD_LOCAL`](https://github.com/python/cpython/blob/3dfed230928de0f649061782a36691066a0ef058/Include/internal/pycore_import.h#L34-L45)
 when loading extension modules, so there shouldn't be any name clashes when 
loading two different extension modules.
   
   Sorry for keep disturbing, I looked up the symbol `OnShutdownRun` in the 
attached process:
   
   ```
   (lldb) image lookup -n OnShutdownRun
   1 match found in 
/Users/*/.venv/lib/python3.10/site-packages/tink/cc/pybind/tink_bindings.cpython-310-darwin.so:
           Address: tink_bindings.cpython-310-darwin.so[0x0000000000297104] 
(tink_bindings.cpython-310-darwin.so.__TEXT.__text + 2700548)
           Summary: 
tink_bindings.cpython-310-darwin.so`google::protobuf::internal::OnShutdownRun(void
 (*)(void const*), void const*)
   1 match found in 
/System/Library/PrivateFrameworks/CoreNLP.framework/Versions/A/CoreNLP:
           Address: CoreNLP[0x000000018c8935b0] (CoreNLP.__TEXT.__text + 963280)
           Summary: CoreNLP`google::protobuf::internal::OnShutdownRun(void 
(*)(void const*), void const*)
   1 match found in 
/Users/*/.venv/lib/python3.10/site-packages/pyarrow/libarrow.2000.dylib:
           Address: libarrow.2000.dylib[0x0000000001b9e0f4] 
(libarrow.2000.dylib.__TEXT.__text + 28942580)
           Summary: 
libarrow.2000.dylib`google::protobuf::internal::OnShutdownRun(void (*)(void 
const*), void const*)
   ```
   
   Does this mean that such symbol is exported several times and globally 
visible to all?
   
   PS: I first `import pyarrow` and then `import tink`, where the mutex can 
hang infinitely.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to