[OSM-Devserver] Hängende Jobs von tirex/mapnik

Jochen Topf jochen at remote.org
Di Aug 3 08:21:11 CEST 2010


On Mon, Aug 02, 2010 at 11:06:45PM +0200, Nop wrote:
> Meine Renderchain läuft jetzt im großen und ganzen. Allerdings beobachte  
> ich ab und zu Mapnik Renderjobs, die sich verklemmen und mit 100%  
> CPU-Last weiterlaufen und bis zu 25 Minuten CPU-Zeit verbrauchen.  
> Irgendwann enden auch diese, aber sie blockieren jeweils einen Prozessor  
> für eine halbe Stunde.
>
> Die hängenden Jobs zeigen manchmal eine Tilekoordinate an, oft aber auch  
> "mapnik:idle" oder "mapnik: initializing".
>
> Hat das schon mal jemand beobachtet oder eine Ahnung woran das liegen  
> könnte?

Mapnik ist nicht perfekt. Der hängt sich gerne mal auf bzw. läuft in einer
Schleife, wenn er mit nicht ganz korrekten Daten gefüttert wird. Das sollte
nicht so sein, ist aber der Fall. Da werden einfach nicht alle möglichen
Fehlerfälle in der library richtig abgefangen.

Der tirex-backend-manager erkennt, wenn sich der rendering-Prozess nicht
regelmäßig meldet, schießt ihn ab und startet einen neuen. Das löst aber
natürlich das eigentiche Problem nicht.

Das sollte aber nur passieren, wenn der mapnik im rendering ist, niemals bei
"idle". Wenn das beim "initializing" passiert, dann stimmt wohl was mit dem
map file nicht, "initializing" heißt, dass er das map file einliest.

Du kannst den Timeout kürzer einstellen, aber manchmal braucht es halt auch
sehr lange, ein Tile zu berechnen und das sollte natürlich nicht abgebrochen
werden.

Jochen
-- 
Jochen Topf  jochen at remote.org  http://www.remote.org/jochen/  +49-721-388298