Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Too many open files error during dependency detection #6

Open
calebzulawski opened this issue Jan 17, 2023 · 1 comment
Open

Too many open files error during dependency detection #6

calebzulawski opened this issue Jan 17, 2023 · 1 comment

Comments

@calebzulawski
Copy link
Collaborator

I suspect this only happens during dependency detection (and not regular compilation) because a greater percentage of time is spent loading headers. This is pretty easily fixed with ulimit but it might be good to limit the number of detection processes (it's currently limited to the task limit, which I would have thought would be sufficient).

error: Too many open files (os error 24)
   ┌─ ergo-cpp-0.12.1/src/operations.ergo:68:21
   │    
68 │                 child = exec ~env=toolchain:tool-exec-env $compiler ^[
   │ ╭───────────────────────^
   │ │ ╭─────────────────────'
69 │ │ │                 ^tc-flags
70 │ │ │                 ^flags
71 │ │ │                 ^public-include-flags
   · │ │
75 │ │ │                 $tracked-file
76 │ │ │             ]
   │ ╰─│─────────────^ while spawning this process
   │   ╰─────────────' in this call

one or more errors occurred
@afranchuk
Copy link
Collaborator

This will occur if something is persisting the child process values rather than using them immediately. This used to occur before a few script changes I made. I was able to check the number of open files using procfs to debug/verify fixes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants