Issue 6645: multiprocessing build fails on AIX - /dev/urandom (or equivalent) not found (original) (raw)
I suppose multiprocessing invokes os.random
somewhere. And os.random
fails on AIX for obvious reasons:
os.urandom(10) Traceback (most recent call last): File "", line 1, in File "/tmp/srid/ActivePythonEE-2.6.2.3-aix-powerpc64/i/lib/python2.6/ os.py", line 755, in urandom raise NotImplementedError("/dev/urandom (or equivalent) not found") NotImplementedError: /dev/urandom (or equivalent) not found
Why should multiprocessing require urandom
at all? Can't it fallback
to os.random, if os.urandom is unavailable?
try: os.urandom(10) except NotImplementedError: urandom = os.urandom else: urandom = os.random
This also breaks pydoc on AIX (Python 2.6.5).
help> modules pydoc
Here is a list of matching modules. Enter any module name to get more help.
Traceback (most recent call last): File "", line 1, in File "/home/qatest/APy/lib/python2.6/site.py", line 438, in call return pydoc.help(*args, **kwds) File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1722, in call self.interact() File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1740, in interact self.help(request) File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1760, in help self.listmodules(split(request)[1]) File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1865, in listmodules apropos(key) File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1965, in apropos ModuleScanner().run(callback, key) File "/home/qatest/APy/lib/python2.6/pydoc.py", line 1930, in run for importer, modname, ispkg in pkgutil.walk_packages(onerror=onerror): File "/home/qatest/APy/lib/python2.6/pkgutil.py", line 110, in walk_packages import(name) File "/home/qatest/APy/lib/python2.6/multiprocessing/init.py", line 63, in from multiprocessing.process import Process, current_process, active_children File "/home/qatest/APy/lib/python2.6/multiprocessing/process.py", line 286, in _current_process = _MainProcess() File "/home/qatest/APy/lib/python2.6/multiprocessing/process.py", line 283, in init self._authkey = AuthenticationString(os.urandom(32)) File "/home/qatest/APy/lib/python2.6/os.py", line 756, in urandom raise NotImplementedError("/dev/urandom (or equivalent) not found") NotImplementedError: /dev/urandom (or equivalent) not found