| Summary: | sys-devel/llvm: test runner often exceeds open file limit when run by pypy | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Michał Górny <mgorny> |
| Component: | Current packages | Assignee: | Michał Górny <mgorny> |
| Status: | RESOLVED OBSOLETE | ||
| Severity: | trivial | CC: | python |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
PyPy target is no longer supported. |
I was just testing if sys-devel/llvm could be built using pypy, and the test runner hit open file limit a few times. The end result being: Testing Time: 390.20s Expected Passes : 5028 Expected Failures : 37 Unsupported Tests : 17 Unresolved Tests : 1759 make[1]: *** [check-local] Error 1 I think that gets triggered by the GC algorithm difference -- files don't get closed immediately when they go out of scope and open descriptors accumulate quickly. If I am correct, then llvm upstream should fix the test runner to close the files properly. Example error: ******************** TEST 'LLVM :: Transforms/LoopSimplify/2010-07-15-IncorrectDomFrontierUpdate.ll' FAILED ******************** Exception during script execution: Traceback (most recent call last): File "/var/tmp/portage/sys-devel/llvm-3.2/work/llvm-3.2.src/utils/lit/lit/main.py", line 122, in runTest self.litConfig) File "/var/tmp/portage/sys-devel/llvm-3.2/work/llvm-3.2.src/utils/lit/lit/TestFormats.py", line 125, in execute self.execute_external) File "/var/tmp/portage/sys-devel/llvm-3.2/work/llvm-3.2.src/utils/lit/lit/TestRunner.py", line 568, in executeShTest res = parseIntegratedTestScript(test, useExternalSh, extra_substitutions) File "/var/tmp/portage/sys-devel/llvm-3.2/work/llvm-3.2.src/utils/lit/lit/TestRunner.py", line 435, in parseIntegratedTestScript for ln in open(sourcepath): IOError: [Errno 24] Too many open files: '/var/tmp/portage/sys-devel/llvm-3.2/work/llvm-3.2.src/test/Transforms/LoopSimplify/2010-07-15-IncorrectDomFrontierUpdate.ll'