László Várady <laszlo.varad...@gmail.com> added the comment: I'd like to mention a real-world example for this issue: syslog-ng with its plugin system.
Plugins are loaded using dlopen() after the initial plugin discovery. RTLD_LOCAL would be a reasonable choice, since symbols in plugins should not pollute the global namespace (so plugins using different versions of OpenSSL, Python, etc. would be possible). Since we have Python-based plugins, we had to use RTLD_GLOBAL instead (with RTLD_LAZY to reduce the possibility of conflicts) as a workaround. Note: The latest Python 3 version seems to be working with RTLD_LOCAL as everything under lib-dynload/ linked against libpython. ---------- nosy: +MrAnno _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue36753> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com