HAVE_SENDFILE change not effective (Re: [distcc] Problems with distcc hanging on large compiles)

Martin Pool mbp at samba.org
Sat Aug 31 19:18:00 GMT 2002


On 30 Aug 2002, "Hien D. Ngo" <hien at moses.xp.com> wrote:
> 
> Recompiled after commenting out '#define HAVE_SENDFILE 1' from config.h, no luck.  
> The hangs are the same as before, here's the requested additional info.  Also, I 
> noticed there's a HAVE_SYS_SENDFILE_H section in config.h.  Does this need to be 
> commented out as well?
> 
> Hien
> 
> =======
> distcc
> =======
> ngoh at bldmaster.foo.com $ netstat -to | grep 4200
> tcp        0  27255 bldmaster.foo.com:38772  build01.ny.ficc.gs.:4200 ESTABLISHED 
> unkn-4 (101.85/0/0)
> tcp        0  16811 bldmaster.foo.com:38783  build01.ny.ficc.gs.:4200 ESTABLISHED 
> unkn-4 (64.14/0/0)
> ngoh at bldmaster.foo.com $ cat /tmp/distcc.trace
> read(5,  <unfinished ...>
> 
> 
> =======
> distccd
> =======
> ngoh at build01.foo.com $ netstat -to | grep 4200
> tcp    71707      0 build01.ny.ficc.gs.:4200 bldmaster.foo.com:38772  ESTABLISHED 
> off (0.00/0/0)
> tcp    71707      0 build01.ny.ficc.gs.:4200 bldmaster.foo.com:38783  ESTABLISHED 
> off (0.00/0/0)
> ngoh at build01.foo.com $ cat distccd.trace
> open("/tmp/distcc_00002493/server_0011494.i", O_WRONLY|O_CREAT|O_TRUNC, 0600 
> <unfinished ...>

I think I managed to reproduce this problem and it may be fixed in CVS
HEAD.  It may have been caused by the daemon trying to use an old fifo
left over from a previous run, and therefore hanging while trying to
open it.

Could you try CVS HEAD.  If trouble persists, would you mind please
using lsof to find out who has the relevant .i server-side file open?

There is another possiblity, which is that perhaps the compiler is
exiting or crashing before it opens the source file.  I don't know if
that is handled properly at the moment but I will have a look.

Thanks,

--
Martin



More information about the distcc mailing list