[New-bugs-announce] [issue37232] Parallel compilation fails because of low ulimit.

Jakub Kulik report at bugs.python.org
Tue Jun 11 09:10:04 EDT 2019


New submission from Jakub Kulik <kulikjak at gmail.com>:

When building and installing Python 3.8 on our sparc machine, the build breaks during the compileall stage with [Error 24] Too many open files. The problem is due to the recently enabled parallel compilation (issue36786).

When -j0 is passed to the compileall, executor starts as many threads as there are cpus, which is problem on our sparc machine with 512 CPUs and rather low ulimit on number of opened files. Compilation fails and is not able to recover from that. For the same reason, test_compileall also breaks and never ends.

I am able to fix both of these by patching both Makefile.pre.in and test_compileall.py with -j32 (instead of -j0), but that is not the best solution.

I think that the best solution to this would be to make compileall.py check for this limit and consider that when creating ProcessPoolExecutor (or, maybe even better, to make it recover when this problem occurs).

----------
components: Build
messages: 345232
nosy: kulikjak
priority: normal
severity: normal
status: open
title: Parallel compilation fails because of low ulimit.
versions: Python 3.8

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue37232>
_______________________________________


More information about the New-bugs-announce mailing list