Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
distcc mit Fehler "still in backoff period"
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
LinuxTom
l33t
l33t


Joined: 26 Mar 2006
Posts: 798

PostPosted: Fri Dec 04, 2009 8:11 pm    Post subject: distcc mit Fehler "still in backoff period" Reply with quote

Hallo Leute,

ich bin am Ende meiner Weisheiten (und der von Google). Irgend wie weiß ich nicht, wo der Fehler liegt. Immer wenn ich beispielsweise "emerge k3b" mache funktioniert es nicht. Es kommt die Fehlermeldung:
Code:
distcc[7101] (dcc_parse_hosts_file) load hosts from /etc/distcc/hosts                                                                                 
distcc[7101] (dcc_parse_hosts) found tcp token "192.168.1.5"                                                                                           
distcc[7101] (dcc_parse_hosts) found tcp token "192.168.1.27"                                                                                         
distcc[7101] (dcc_check_backoff) still in backoff period for 192.168.1.5                                                                               
distcc[7101] (dcc_remove_disliked) remove 192.168.1.5 from list                                                                                       
distcc[7101] (dcc_check_backoff) still in backoff period for 192.168.1.27                                                                             
distcc[7101] (dcc_remove_disliked) remove 192.168.1.27 from list                                                                                       
distcc[7101] (dcc_build_somewhere) Warning: failed to distribute, running locally instead                                                             
distcc[7101] (dcc_lock_host) /var/tmp/portage/.distcc/lock/cpu_localhost_0 is busy                                                                     
distcc[7101] (dcc_lock_host) /var/tmp/portage/.distcc/lock/cpu_localhost_1 is busy                                                                     
distcc[7101] (dcc_lock_host) /var/tmp/portage/.distcc/lock/cpu_localhost_2 is busy                                                                     
distcc[7101] (dcc_lock_host) got cpu lock on localhost slot 3 as fd3                                                                                   
distcc[7101] exec on localhost: x86_64-pc-linux-gnu-g++ -DMAKE_K3BDEVICE_LIB -D_BSD_SOURCE -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -DQT_NO_STL -DQT_NO_CAST_T

Mache ich "emerge nano", funktioniert es:
Code:
distcc[5682] (dcc_parse_hosts_file) load hosts from /etc/distcc/hosts                                                                                 
distcc[5682] (dcc_parse_hosts) found tcp token "192.168.1.5"                                                                                           
distcc[5682] (dcc_parse_hosts) found tcp token "192.168.1.27"                                                                                         
distcc[5682] (dcc_check_backoff) still in backoff period for 192.168.1.27                                                                             
distcc[5682] (dcc_remove_disliked) remove 192.168.1.27 from list                                                                                       
distcc[5682] (dcc_lock_host) /var/tmp/portage/.distcc/lock/cpu_tcp_192.168.1.5_3632_0 is busy                                                         
distcc[5682] (dcc_lock_host) got cpu lock on 192.168.1.5 slot 1 as fd3                                                                                 
distcc[5682] (dcc_lock_host) got cpu lock on localhost slot 0 as fd4                                                                                   
distcc[5682] (dcc_note_state) note state 3, file "(NULL)", host "localhost"                                                                           
distcc[5682] (dcc_strip_dasho) result: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. "-DLOCALEDIR="/usr/share/locale"" "-DSYSCONFDIR="/etc"" -I/usr/include/ncursesw -march=nocona -O2 -pipe -MT nano.o -MD -MP -MF .deps/nano.Tpo -c nano.c                                                           
distcc[5682] (dcc_spawn_child) forking to execute: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. "-DLOCALEDIR="/usr/share/locale"" "-DSYSCONFDIR="/etc"" -I/usr/include/ncursesw -march=nocona -O2 -pipe -MT nano.o -MD -MP -MF .deps/nano.Tpo -E nano.


So, und nun noch ein paar Konfigurationen:
Code:
[ebuild   R   ] sys-devel/distcc-3.1-r4  USE="gnome gtk ipv6 -avahi -hardened (-selinux) -xinetd" 0 kB

netstat -anp --ip | grep distcc:
tcp        0      0 192.168.1.27:3632       0.0.0.0:*               LISTEN     11540/distccd

/etc/distcc/hosts:
192.168.1.5 192.168.1.27

/etc/conf.d/distccd:
...
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.1.5"
DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.1.27"
...

$PATH:
/usr/lib/distcc/bin:/usr/local/sbin:/usr/loca ....
Back to top
View user's profile Send private message
Hollowman
Guru
Guru


Joined: 19 Apr 2007
Posts: 584

PostPosted: Fri Dec 04, 2009 8:30 pm    Post subject: Reply with quote

Quote:
Wenn Sie verschiendene Pakete emergen werden Sie bemerken, dass nicht alle verteilt kompiliert (und vor allem noch nicht einmal parallel gebaut) werden. Dies kann dadurch verursacht werden, dass das Makefile eines Pakets parallele Arbeiten nicht unterstützt oder der Maintainer eines Ebuilds parallele Arbeiten wegen einem bekannten Problem explizit deaktiviert hat.


Liegt das vielleicht daran?

Sebastian
Back to top
View user's profile Send private message
LinuxTom
l33t
l33t


Joined: 26 Mar 2006
Posts: 798

PostPosted: Fri Dec 04, 2009 9:01 pm    Post subject: Reply with quote

Nein. Die Verbindung innerhalb des distcc funktioniert nicht. Irgend wie scheint die Umgebung da irgend etwas zu "verstellen". Wenn -j=1 wäre, dann wird nur ein Prozess gestartet, aber nicht der Host als "schlecht" gemarkert. Denke ich zumindest.
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1136
Location: /dev/koelsch

PostPosted: Tue Dec 08, 2009 12:32 pm    Post subject: Reply with quote

Hmmh,

sitze zwar gerade nicht an meiner Maschiene, aber ich hatte vor einiger Zeit ähnliche Probleme, mit zunehmender Tendenz.
Mit jedem weiteren world Update wurden immer weniger Pakete verteilt gebaut, und die Fehlermeldungen von Distcc häuften sich.

Letztlich lag's wohl am auseinanderdriften der Toolchain meines Systems (~x86_64 immer aktuell), und des darin installierten Crosscompilers der nämlich nicht mit aktualisiert wird!
Vermutlich da er aus dem lokalen Overlay stammt, und dessen Toolchain auf Basis des zum Installationszeitpunkt aktuellen systems gebaut wird.

Ich habe also meine alte Crossdev erst mal gelöscht.
Dann wieder die aktuelle Cross-dev-Toolchain bauen lassen mit crossdev -t [deine Zielarch]

Info's vermutlich wie bekannt auch hier:[url] http://www.gentoo.org/doc/en/cross-compiling-distcc.xml[/url]

Die symlinks hab ich aber nicht mehr händisch erstellt, wenn ich mich recht erinnere hab ich eine wrapper paket (Name=?) aus dem Portage tree stattdessen installiert.
Du solltest auch mal deine distccd / distcc/hosts Konfiguration überprüfen. Wenn du die aktuelle Version >3.? Verwendest, kann man den pump mode benutzen, aber man muss noch in besagten conf.s cpp hinzufügen.

Jedenfalls läuft's bei mir seitdem wie Schmitz Katze, und Crosscompiling mit distcc macht wieder richtig Spaß!

Viel Erfolg,

Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
musv
Advocate
Advocate


Joined: 01 Dec 2002
Posts: 3254
Location: de

PostPosted: Tue Dec 08, 2009 4:03 pm    Post subject: Reply with quote

Ich geh mal davon aus, dass du die gleiche Architektur bei allen beteiligten Rechnern hast. Ansonsten brauchst du noch einen Cross-Compiler:
http://www.gentoo.org/doc/en/cross-compiling-distcc.xml
http://www.gentoo.org/proj/en/base/embedded/handbook/?part=1&chap=4

Meine Konfigurationen sind so:
Server:
/etc/conf.d/distccd:

DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.0/24


Client:
/etc/distcc/hosts:

localhost/2 192.168.0.1/3


Die make.conf sollte klar sein - genauso, dass auf dem Server der distccd gestartet sein sollte.
Back to top
View user's profile Send private message
LinuxTom
l33t
l33t


Joined: 26 Mar 2006
Posts: 798

PostPosted: Wed Dec 09, 2009 9:57 am    Post subject: Reply with quote

Mein Problem ist Randy Andy's sehr ähnlich. Ich werde mal den pump-Mode ausprobieren.
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1136
Location: /dev/koelsch

PostPosted: Wed Dec 09, 2009 8:55 pm    Post subject: Reply with quote

LinuxTom,

dann hier noch zu Vergleich meine settings:
client
/etc/distcc/hosts
Code:
big-server,cpp,lzo localhost --localslots=2 --localslots_cpp=4


server
netstat -anp --ip | grep distcc
Code:
tcp        0      0 0.0.0.0:3632            0.0.0.0:*               LISTEN      5461/distccd


/etc/conf.d/distccd
Code:
ISTCCD_OPTS=""
DISTCCD_EXEC="/usr/bin/distccd"
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"
DISTCCD_OPTS="${DISTCCD_OPTS} --log-level critical"
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.69.0/24"
#DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.69.4"
DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"
DISTCCD_OPTS="${DISTCCD_OPTS} --zeroconf"


Den pump mode startest du einfach durch voranstellen von pump vor jeden emerge Befehl.
Viel Erfolg, Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
LinuxTom
l33t
l33t


Joined: 26 Mar 2006
Posts: 798

PostPosted: Sun Dec 13, 2009 8:01 pm    Post subject: Reply with quote

Jetzt funktioniert es. Lag evtl. am --listen-Argument in der conf-Datei. Habe ich jetzt auch weggelassen.
Aber: OHNE Pump-Mode. Mit pump kommen immer Fehler, da die Pakete nicht gebaut werden. Er findet dann irgend etwas nicht. Wohl lokal noch nicht da.
Code:
libtool --quiet --tag=CC --mode=link i686-pc-linux-gnu-gcc -export-dynamic -Wl,-O1 -o lua lua.lo liblua.la -lreadline                                       
libtool --quiet --tag=CC --mode=link i686-pc-linux-gnu-gcc -static -export-dynamic -Wl,-O1 -o lua_test lua.lo liblua.la -lreadline                         
libtool --quiet --tag=CC --mode=link i686-pc-linux-gnu-gcc -static -Wl,-O1 -o luac luac.lo print.lo liblua.la                                               
./.libs/liblua.a(ldo.o): In function `luaD_throw':                                                                                                         
ldo.c:(.text+0x99f): undefined reference to `__longjmp_chk'                                                                                                 
collect2: ld returned 1 exit status                                                                                                                         
distcc[31704] ERROR: compile (null) on localhost failed                                                                                                     
make: *** [luac] Fehler 1

Vielleicht hat der PUMP-Mode mit den unterschiedlichen Architekturen ein Problem. Lokal: CHOST="i686-pc-linux-gnu". Beide Server: CHOST="x86_64-pc-linux-gnu". Alle gleiche GCC's und auf den Servern entsprechende "crossdev -t i686" installiert.
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1136
Location: /dev/koelsch

PostPosted: Mon Dec 14, 2009 7:57 am    Post subject: Reply with quote

Hi LinuxTom,

immerhin schon mal ein Teilerfolg...

An der Konstellation deiner Rechnerarchitekturen kann es aber nicht liegen, da ich zufällig genau die gleiche Kombination verwende.
Ich erinnere mich aber noch dunkel dass der Pump Mode zwingend mindestens das cpp und ev. auch das lzo in der hosts Datei der clients benötigt.

Versuch's doch mal in deinem Fall mit:

/etc/distcc/hosts:
Code:
192.168.1.5,cpp,lzo 192.168.1.27,cpp,lzo


Zur Sicherheit eventuell erst mal mit nur einem laufenden Server beginnen, das entspräche dann genau meiner Konstellation.

Gruß, Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
LinuxTom
l33t
l33t


Joined: 26 Mar 2006
Posts: 798

PostPosted: Thu Dec 17, 2009 8:04 am    Post subject: Reply with quote

Laut diesem Artikel ist eine kleine Anpassung für den pump-Mode notwendig. Vielleicht funktioniert er deshalb nicht. Scheint sich auch mit meiner Fehlermeldung zu decken. Also kein pump bei mir. :(
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1136
Location: /dev/koelsch

PostPosted: Thu Dec 17, 2009 5:17 pm    Post subject: Reply with quote

Ja, den Artikel kenn ich, seit dem ich seinerzeit bei Einführung des pump mode, recherchieren wollte wie man ihn aktiviert. Damals stand's noch nicht in der man-page dass emerge einfach nur mit pump aufgerufen werden muss.

Jedenfalls bedarf es distcc ab Version 3.x aufwärts, sowie der richtigen Konfiguration, und dann läut's wie Jeck!
Guckst Du. (distccmon-text)

Code:

7377  Preprocess  qguiplatformplugin.cpp                       big-server[2]
  7373  Compile     qdesktopwidget.cpp                           big-server[3]
  7331  Compile     qstackedlayout.cpp                            localhost[0]
  7253  Compile     qboxlayout.cpp                                localhost[1]

  7531  Blocked                                                            [2]
  7524  Compile     qbmphandler.cpp                              big-server[2]
  7529  Preprocess  qppmhandler.cpp                              big-server[3]
  7519  Compile     qpixmap_x11.cpp                               localhost[0]
  7478  Compile     qpixmap.cpp                                   localhost[1]

  7667  Preprocess  qtessellator.cpp                             big-server[2]
  7655  Compile     qregion.cpp                                  big-server[2]
  7670  Preprocess  qtextureglyphcache.cpp                       big-server[3]
  7638  Compile     qprintengine_pdf.cpp                          localhost[0]
  7609  Compile     qpaintengineex.cpp                            localhost[1]

  7780  Preprocess  qtextformat.cpp                              big-server[2]
  7775  Compile     qtextlayout.cpp                              big-server[2]
  7782  Preprocess  qtextobject.cpp                              big-server[3]
  7728  Compile     qpaintengine_x11.cpp                          localhost[0]
  7682  Compile     qpaintbuffer.cpp                              localhost[1]

  7915  Preprocess  qplastiquestyle.cpp                          big-server[2]
  7897  Compile     qcommonstyle.cpp                             big-server[3]
  7919  Preprocess  qgtkstyle.cpp                                big-server[3]
  7868  Compile     qfontengine_x11.cpp                           localhost[0]
  7923  Compile     qgtkpainter.cpp                               localhost[1]

  8028  Compile     qprogressbar.cpp                             big-server[2]
  8034  Compile     qradiobutton.cpp                             big-server[3]
  8038  Compile     qrubberband.cpp                               localhost[0]
  7993  Compile     qlcdnumber.cpp                                localhost[1]


Solltest du also im stable Zweig arbeiten, dann ggf. distcc demaskieren, um an die Version > 3 zu gelangen.
Ansonsten wüsste ich nicht warum es bei dir nicht laufen soll.

Gruß, Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum