Add explicit/helpful error message about how to solve the multiprocessing 'Permission denied' issue.

This commit is contained in:
Valentin Lorentz 2013-08-12 19:08:31 +02:00
parent 36f54039fc
commit ebde072f39

View File

@ -101,7 +101,17 @@ def process(f, *args, **kwargs):
except Exception as e:
raise e
q = multiprocessing.Queue()
try:
q = multiprocessing.Queue()
except OSError:
log.error('Using multiprocessing.Queue raised an OSError.\n'
'This is probably caused by your system denying semaphore\n'
'usage. You should run these two commands:\n'
'\tsudo rmdir /dev/shm\n'
'\tsudo ln -Tsf /{run,dev}/shm\n'
'(See https://github.com/travis-ci/travis-core/issues/187\n'
'for more informations about this bug.)\n')
raise
def newf(f, q, *args, **kwargs):
if resource:
rsrc = resource.RLIMIT_DATA