[distcc] distcc doesn't read /etc/distcc/hosts when started by rpmbuild

Sam Varshavchik mrsam at courier-mta.com
Sun Jun 14 08:33:00 MDT 2015


I have /etc/distcc/hosts configured with 4 local builds, and 6 distibuted  
builds.

When I run 'make -j 10' myself, the build gets correctly distributed. But  
something strange happens when I try to use rpmbuild.

I have rpmbuild properly configured to run 'make -j 10'. And I see that ten  
distcc instances get started, but only for localhost builds appear to be  
running, and the remaining processes wait until a localhost slot becomes  
available, before spawning off g++.

I strace-d the entire rpmbuild.

What I see is that distcc never reads /etc/distcc/hosts, and just proceeds  
to run a local build.

When I run 'make -j 10' myself, this is what I see the distcc process doing:

17180 mkdir("/home/mrsam/.distcc", 0777 <unfinished …>
17180 <… mkdir resumed> )             = -1 EEXIST (File exists)
17180 access("/home/mrsam/.distcc/hosts", R_OK) = -1 ENOENT (No such file or  
directory)
17180 access("/etc/distcc/hosts", R_OK <unfinished …>

… and so on.

When I strace an entire rpmbuild, the distcc process, instead, does this:

10068 mkdir("/home/mrsam/.distcc", 0777 <unfinished …>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)
10068 mkdir("/home/mrsam/.distcc/lock", 0777 <unfinished …>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)
10068 open("/home/mrsam/.distcc/lock/cpu_localhost_0", O_WRONLY|O_CREAT,  
0666 <unfinished …>

… and so on. What are the reasons distcc decides to skip checking  
/etc/distcc/hosts? grepping the entire strace, distcc never tries to read  
/etc/distcc/hosts.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/distcc/attachments/20150614/d9ad612f/attachment.pgp>


More information about the distcc mailing list