bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EAGAIN in "read jobs pipe"


From: James Coleman
Subject: Re: EAGAIN in "read jobs pipe"
Date: Tue, 09 Jan 2007 10:32:03 +0000
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)

Ken Takusagawa wrote:
For reasons I haven't completely triaged yet, I've been having my
parallel makes die with
"read jobs pipe: Resource temporarily unavailable.  Stop."

All memory on machine might be used up (real memory + all swap).

e.g. we get this:  virtual memory exhausted: Resource temporarily unavailable

We have some particularily heavy files at compile time and if machines are busy 
(memory-wise) or
if they are low in memory anyway they frequently hit that error and the build 
fails.
Depending on the machine and build this can happen even if not using any 
parallelism.


I hacked the function new_job in job.c such that if errno==EAGAIN,
then we sleep(1) and loop again, and my problem went away.
(Essentially adding EAGAIN to EBADF and EINTR as the ignored signals.)

:) cool! That seems like a good idea.

Rather than scripting to test for successful build and retrying a few times 
maybe make could
do the retry.

James.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]