[distcc] [PATCH] retry compiling when remote gcc was killed by
signal
Martin Pool
mbp at sourcefrog.net
Tue Jul 13 02:56:01 GMT 2004
On 12 Jul 2004, Jakub Stachowski <qbast at go2.pl> wrote:
> Hello,
>
> I noticed that return codes > 128 (which means that compiler was killed by
> signal) is treated exactly as normal compilation error. However, killing
> compiler indicates problems with system (in most cases not enough memory) or
> compiler itself, not with source code. So there is still chance that retrying
> compilation on local machine will succeed. Typical example: I compile KDE
> (lots of big c++ files) on several machines with 64-128MB of RAM ('localhost'
> has 512MB RAM). I use distccKnoppix so there is no possibility to use swap on
> these machines. Sometimes one of them run out of memory and gcc gets killed
> and make finishes with error. Then I have to restart make with -j1 (to build
> offending file on localhost as it has enough RAM), then restart it again with
> -j8 and hope for the best.
>
> Attached simple patch treats remote errors caused by killed compiler as
> distribution errors. This means that distcc will fallback to local
> compilation of offending file and problematic host will get blacklisted for a
> minute.
Hi,
You should try starting distccd with 'distccd -j 1' on machines that
can only fit a single job at a time.
I'll have a think about the patch.
--
Martin
More information about the distcc
mailing list