Xavier de Gaye <xdeg...@gmail.com> added the comment:
Too hasty again, remembering now why I linked this failure with sem_open :-( Re-opening this issue as the test does fail because Android lacks a functioning sem_open implementation. And tagging this issue as a dependency of bpo-35978 as we should wait for the solution on bpo-35978 before fixing this one, if it is still needed. The link between the failure and sem_open shows up when running the python statements of test_multiprocessing() in the interpreter on Android: generic_x86_64:/data/local/tmp/python $ python Python 3.8.0a2+ (heads/bpo-36341-dirty:41f0b78cbf, Mar 18 2019, 10:43:05) [Clang 3.8.275480 ] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from multiprocessing import Pool >>> print(Pool(1).apply_async("Python".lower).get(3)) Traceback (most recent call last): File "/data/local/tmp/python/lib/python3.8/multiprocessing/synchronize.py", line 28, in <module> from _multiprocessing import SemLock, sem_unlink ImportError: cannot import name 'SemLock' from '_multiprocessing' (/data/local/tmp/python/lib/python3.8/lib-dynload/_multiprocessing.cpython-38dm.so) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/data/local/tmp/python/lib/python3.8/multiprocessing/context.py", line 118, in Pool return Pool(processes, initializer, initargs, maxtasksperchild, File "/data/local/tmp/python/lib/python3.8/multiprocessing/pool.py", line 166, in __init__ self._setup_queues() File "/data/local/tmp/python/lib/python3.8/multiprocessing/pool.py", line 300, in _setup_queues self._inqueue = self._ctx.SimpleQueue() File "/data/local/tmp/python/lib/python3.8/multiprocessing/context.py", line 112, in SimpleQueue return SimpleQueue(ctx=self.get_context()) File "/data/local/tmp/python/lib/python3.8/multiprocessing/queues.py", line 336, in __init__ self._rlock = ctx.Lock() File "/data/local/tmp/python/lib/python3.8/multiprocessing/context.py", line 66, in Lock from .synchronize import Lock File "/data/local/tmp/python/lib/python3.8/multiprocessing/synchronize.py", line 30, in <module> raise ImportError("This platform lacks a functioning sem_open" + ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770. >>> ---------- dependencies: +test_venv fails in Travis with GCC resolution: duplicate -> stage: resolved -> status: closed -> open _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue36342> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com