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]
