Mapnik Aktualisierung

Wenn ich Änderungen uploade, werden sie in der Mapnik-Karte binnen Minuten wirksam. Außer Zoomlevel 9-11, die sind schon seit Wochen unverändert. Was ist da los?

moin,

schon versucht die ansicht mit “strg - F5” zu aktualisieren und/oder die tiles mit /dirty neu anzustoßen?

Was meinst du mit /dirty ? Zu welchem Kommando? In der URL (http://www.openstreetmap.org/?lat=47.965&lon=15.78&zoom=11&layers=M&dirty=yes) scheint das nicht zu wirken.

Hi,

“dirty” wird auf die einzelne Kachel angewendet, Du brauchst dementsprechend zu Deinem gewünschten Gebiet die entsprechende
“Kachelnummer”, vgl. im Wiki “DE:Slippy_Map” den Abschnitt “Rendern mit Mapnik”.

Ciao,
Frank

im Browser rechte Maustaste drücken und Grafik anzeigen auswählen. Oben im Browser an den Link /dirty dranhängen, Enter drücken und einen Kaffee machen (<- ganz wichtig, ohne gehts nicht). Wenn der Kaffee fertig ist, sollte der auf dem Tile angezeignete Kartenausschnitt sowie die daran angrenzenden neu berechnet worden sein, ggf STRG + R drücken
In den Ansichten mit geringen Vergrößerungen kommt es nur sehr selten zur Neuberechnung bei Mapnik. Ich habe schon mehr als 2 Monate alte Tiles gesehen obwohl in dem Gebiete recht viel geändert wurde.

Hat funktioniert.

Dort steht, dass max. 7 Tage, nachdem sich jemand einen Tile anschaut, der neu gerendert wird. Stimmt aber nicht.

War in dem Gebiet, das ich meinte, genauso. Wahrscheinlich war Zoomlevel 8 nur deshalb aktueller, weil wer anderer eben dieses /dirty manuell gesetzt hatte.

Vielleicht rendert Mapnik die Zoomlevels <12 generell nur noch nach manueller Vormerkung, weil das so viel Rechenleistung braucht.

Hi,

nope ;), so wie Du es beschreibst, steht es im (engl.) Wiki nicht ganz drin:
"Wenn Du eine Kachel anschaust und sie ist jünger als 7 Tage und nach Dir 5 Monate lang diese Kachel nicht angeschaut wird, wird sie in der ganzen Zeit nicht gerendert.
Es erfolgt keine Automatische Renderung nach 7 Tagen der Anschauung :wink: "

Wie dem auch sei, das dt. wiki ist von Januar 2010 (dort ist von 3 Tagen die Rede), der engl. Artikel im Juni 2010 zum letzten Mal geändert worden.Kann sein, dass sich der “Kachelaktualierungsalgorithmus” inzwischen wieder geändert hat.

Wie auch immer, die Wiki-Artikel sollten Dir nur erklären, wie das Prinzip funktioniert.

Und da es bei Dir geklappt hat :slight_smile:
haben sie ja ihren Zweck erfüllt, oder nicht?

Ciao,
Frank

Das trifft es recht genau. Um nicht unnoetig oft die low-zoom tiles zu rendern (die zum Teil sehr lange brauchen zum renderd) markiert der automatische Code nur tiles Z11?-18 zur Neuberechnung. Die low zoom tiles werden somit nur dann neu gerendert wenn entweder jemand sie manuell als /dirty markiert, oder wenn ein voll Import der Daten in die Datenbank geschieht, wodurch dann automatisch alle tiles als dirty markiert werden, ob sie sich nun geaendert haben oder nicht.

Frueher wurden noch recht regelmaessig voll Importe durchgefuehrt. Seit dem der inkrementelle Update aber sehr stabil laeuft geschieht das eigentlich nicht mehr, wodurch jedoch auch die lowzoom tiles nicht mehr sonderlich haeufig neu gerendert werden.

Das wiki ist wohl in der Hinsicht etwas outofdate.

Sinnvoll waere es imho wenn die lowzoom tiles einfach z.B. einmal die Woche im Hintergrund neugerechnet werden wuerden, aber das hat halt bislang noch keiner Umgesetzt.

Als Referenz sind vielleicht noch diese beiden Eintrage hilfreich:
http://help.openstreetmap.org/questions/178/how-often-does-the-main-mapnik-map-get-updated
http://help.openstreetmap.org/questions/276/why-do-the-changes-i-have-made-to-coastline-not-appear-on-the-map

Sinnvoll wäre, wenn Tiles korrect als “dirty” ausgewiesen würden. Die meisten Tiles werden als “clean” ausgewiesen, wenn man mit /status nachfragt, auch wenn sie eigentlich “dirty” sind. Solche Tiles werden dann doch nach einer gewissen Zeit (einige Studnen) gerendert, leider aber auch einige nicht.

Zum Rerendern von Tiles reicht es eigentlich, sie einfach im gewünschten Zoomlevel mit ausgeschaltetem Browser-Cache anzuzeigen, spätestens am anderen Tag sind sie gerendert. Falls es doch mal “vergessene” Tiles hat, die irgendwie den “dirty” Mode verloren haben, dann muss man den Trick mit der rechten Maustaste (show image) anwenden und ein /dirty dranhängen. Danach ist spätestens nach einem Tag auch dieses Tile gerendert.

Das Rendering selber ist übrigen in den grossen Zoomlevels extrem schnell, da muss ich den Renderen ein Kompliment machen. Ist die Queue nicht voll, werden einzlne Tiles sofort gerendert und gleich neu angezeigt. Wer also dringend am Abend einige Tiles braucht, sollte früh Morgens in den Randstunden diese Tiles schnell anzeigen.

Wyo

Das neu Rendern von Tiles kann man auch auf http://www.informationfreeway.org/
im Zoomlevel 12 mit Strg + linke Maustaste anstossen.

Hat das irgendwelche Vor- oder Nachteile gegenüber dem manuellen dirty-Aufruf?

Walter

Das oben betrifft aber doch nur die osmarender-Karte.

Gruß,
ajoessen

informationfreeway.org steuert das Rendern der Osmarender-Karte mit TilesAtHome. Auf Mapnik hat das keinen Einfluss, glaube ich.

Meines Wissens ist “dirty” für Mapnik auf http://www.openstreetmap.org und “r” für Osmarender auf http://www.informationfreeway.org/.

Ich habe dazu bisher noch keine Informationen im Wiki finden können.
Vielleicht werden diese Render-Requests nur als Insider-Wissen gehandelt, um die Request-Rate gering zu halten.

Walter

Also nochmals, wenn ein Tile angezeigt werden sollte, wird einen Render-Auftrag erzeugt, sofern es als dirty vorgemerkt ist. Wird dieser Render-Auftrag innerhalb einer gewissen Zeit erledigt, wird direkt das neu gerenderte Tile geladen, sonst das alte oder falls keines vorhanden das OSM-Logo-Bild. Der Render-Auftrag wird dann irgendwann später erledigt, meistens innert Minuten.

Es kommt vor, dass entweder der dirty Status oder der Render-Auftrag verloren gehen, ein solches Tile wird also nicht gerendert. Es gibt noch die 7-Tage-Regel, nach der eigentlich ein Tile als dirty gelten würde, ob das stimmt weiss ich jedoch nicht.

Das Hauptproblem ist dabei, jederman verwendet den Browser-Cache. Ohne Ladeauftrag gibt es auch keinen Render-Auftrag. Ich habe schon erlebt, dass ich im Geschäft noch tagelang die alten Tiles gesehen haben, wärend zuhause innert Kürze die neuen vorhanden waren.

Wyo