Weg wiederherstellen

Hallo OSMler,

ich habe ein Problem, für das ich trotz Suchen bisher noch keine Lösung finden konnte. Ein Mapper hat in meiner Region am 23.6.11 eine Landstraße gelöscht. So wie die Kartendaten aussehen, vermute ich, er hat zuerst versehentlich alle Punkte der Straße auf eine Linie gebracht und dann die Straße gelöscht. Es handelt sich um die L1268 zwischen Dietenheim und Orsenhausen (ID 23311625). Version 25 ist die gelöschte Version, Version 21 hätte ich gerne wiederhergestellt. Ich bin nach der Anleitung zur Wiederherstellung einer Relation vorgegangen, komme auch bis zum Hochladen der Datei, erhalte dann aber einen Fehler, vermutlich weil so viele auf die Straße laufenden Wege jetzt nicht mehr verknüpft sind. Gibt es eine Möglichkeit, die Daten wiederherzustellen oder ist da einfach Handarbeit angesagt. Ich würde mich freuen, wenn mir jemand weiterhelfen kann.

Hallo minkus,

willkommen im Forum, das Wetter ist so klasse, das wohl noch keiner dazugekommen ist, drüber zu schauen.

Das Objekt kann man wiederherstellen (sowohl in potlatcch als auch in JOSM), kann ich probieren.

ist das der einzige “Fehler in der Gegend” ?

christoph

Muss ich gleich nochmal ran, irgendwie hat er nur die Knotenpunkte wiederhergestellt, und das auch noch in der begradigten Version.

gefixt, schauste bitte nochmal drüber .

Das Wiederherstellen, wie Du es probiert hast, hat bei mir natürlich auch nicht geklappt. Die Konflikte, die ich mit JOSM beheben wollten führten zu JOSM Fehlern, und so kam die Linie partiell im ersten Schritt nach oben.

Im zweiten hab ich dann schritt für Schritt die Changesets rückgängig gemacht und Konflikte behoben (100 Konflikte).

Hallo Christoph,

da bin ich echt platt. Vielen, vielen Dank! Eigentlich wollte ich mich gerade dranmachen, die Straße neu einzuzeichnen, aber dann dachte ich, dass ich sicherheitshalber nochmal ins Forum schaue. Als ich dann deine Einträge gelesen hatte, habe ich schnell mal meine Daten aktualisiert und stelle fest, dass es so aussieht wie vorher. Phantastisch. Ein paar Kleinigkeiten meine ich noch gefunden zu haben, aber das kann ich selbst schnell erledigen.

Um die Wahrscheinlichkeit, dass sowas nochmal passiert, so gering wie möglich zu halten, werde ich erstens dem Kollegen (dem dies ausgerechnet in seiner allerersten OSM-Sitzung passiert ist) mal raten, etwas vorsichtiger zu sein. Zweitens aber noch die Frage: Kann ich solche Schäden als normalsterblicher Mapper auch reparieren? Oder braucht man da höhere Weihen? Immerhin war mein Ansatz ja offensichtlich nicht ganz falsch. Aber bis ich soweit war, hatte ich schon eine ganze Weile rumprobiert. Und du schreibst, dass du die Changesets rückgängig gemacht hast. Ich hatte zwar zwischendurch genau diese Idee, dass man die Änderungen des betreffenden Kollegen einfach wieder löschen können müsste, aber ich wüsste nicht, wie ich das in JOSM oder wie auch sonst hinbekomme.

Aber wie dem auch sei, das war jedenfalls eine erstklassige Wiederherstellungsarbeit. Noch einmal vielen Dank!

Martin

Hallo Martin,

die Ansprache der Kollegen ist gut. Wenn ich daran denke, das auch an anderer Stelle die Präsenz der Knöpfe Rundmachen und Gerademachen an so präsenter Stelle durchaus bemängelt wird, sieht das hier aus nach “Live Edit” ansonsten kann ich mir mehrere Änderungen in einem Changeset nicht erklären, ein versehentliches “Mach Gerade” und ein hilfloses, Mist das muss ich Löschen, wo ist hier das undo.

Aber zur Kernfrage: Was hab ich gemacht.

Mit der Relationswiederherstellempfehlung aus der JOSM Anleitung bin ich nicht ganz glücklich geworden. Aber losgelaufen, ich wollte probieren mehrere Versionen gleichzeitig “zurückzuspringen”. Das führte aber bei der Konfliktbehebung zu Fehlern in JOSM, so dass ich über das Ergebnis nicht glücklich war, aber das einen Ausgangspunkt herstellt.

Diesen Ausgangspunkt sollte man auch mit dem Plugin Undelete, dem man eine Way ID mitgeben kann, machen können. Alternativ gibt es auch wohl ein undelete in Potlatch.
(mit Undelete hatte ich beim Wiederherstellen von Punkten schonmal Probleme, hier ist evlt. das Zusammenspiel undelete und reverter erfolgreich).

Für den nächsten Schritt braucht man das reverter plugin und das utils2 plugin.

ACHTUNG:
Bitte NIE ein ganzen Changeset zurücksetzen, Ausnahmen: Man hat es selber verbockt, oder ist im Forum gebeten worden.
Es gibt nach meiner Kenntnis kein wirklich brauchbares Tool, sind den kompletten Inhalt eines grösseren Changesets sinnvoll anzeigen zu lassen, und in der Weboberfläche “übersieht” man meiner Ansicht nach schonmal was.

Hintergrund: Ich haben nach (leider zu kurzer) Analyse mal 2 Changesets von einem Newbee zurückgesetzt. Die Probleme, die ich gesehen hatte, waren auch prima gelöst, leider waren in den Changesets auch massive Fixes, die ich wieder rückgängig gemacht hatte. 2h später hatte ich eine freundliche Mail aus der Gegend, und einen Haufen Arbeit, da ich diese zurückgesetzten Fehlerbehebungen noch mal machen musste.

Aber das Reverter Plugin kann mehr, es kann auf das Changeset für die aktuelle Auswahl zurücksetzen, und das habe ich auch schon mehrfach mit Erfolg eingesetzt.

In diesem Fall also den Way auswählen, dann mit dem utils2plugin “E” alle Wegpunkte im way wählen wählen, noch einnmal den Way zu den Wegpunkten mit Shift selektieren. (bei versehentlichen Verschiebungen nicht Löschungen braucht man den Weg nicht notwendigerweise mit anzuwählen)

Dann können die Changesets in umgekehrter Reihenfolge (so handhabe ich das), rückgängig gemacht werden. Wichtig im Zurücksetzen Dialog: Nicht vergessen nur die Auswahl zurückzusetzen.
Das führt eigentlich immer zu Konflikten in JOSM, die mit dem Konfliktbearbeitstool nachzupflegen sind. In diesem Fall war bei 100 Knoten die Position aus meiner Version und der Löschstatus aus der Serverversion zu nehmen. Bei der Strasse wurden dann auch noch die Merkmale von der Serverversion genommen. (100 %tig verstanden was Serverversion und meine Version heisst habe ich nicht. Aber da auch immer die Inhalte für die Zusammenstellung
angezeigt werden, geht das eigentlich ganz gut).

Anschliessend (das hast Du ja übernommen) gibt es immer noch kleinere Nacharbeiten. Das sollten man prüfen, und umsetzen.

Ach ja, ich persönlich finde, wer einen solchen Fix startet, sollte ihn auch zu Ende führen. D.h. man sollte sich vorher in jedem Fall zutrauen, für den Fall das was schiefgeht, den Fix manuell zu Ende zuführen.

Und noch ganz wichtig: Es sollten möglichst wenig bis keine Änderungen in der Gegend nach den Changesets gemacht worden sein, sonst buxiert man sich in die Küche des Teufels.

Christoph

Das ist bei Wegen leider nicht so einfach, weil beim Löschen eines Weges dessen Knoten gleich mit gelöscht werden, sofern sie nicht anderswo mitbenutzt werden. Beim Löschen von Relationen werden die Mitglieder dagegen nicht gelöscht.

Umgekehrt gibt es dann beim Wiederherstellen von Wegen Konflikte an den Verknüpfungen mit anderen Wegen.
Neu zeichnen ist dann wohl einfacher.

Wenn du den Weg in einer lokalen OSM-Datei noch hast, kannst du diese als zweite Datenebene hinzuladen. Das macht das Neuzeichnen einfacher. Diese zweite Datenebene aber nicht hochladen!

Gruß,
ajoessen

Das will ich - trotz meiner Anleitung - für diesen Fall nicht ausschliessen :slight_smile: .

Zufrieden mit dem Reverter bin ich an der Stelle, wenn ein Weg verschoben wurde. Dann kann man ihn mit dem Reverter exact an die Originalposition zurückbekommen, in dem man nur die Punkte des Weges “zurücksetzt”. Da bin ich bei Meiner aktuellen Mapping Deutschlandtour jetzt schon mehrfach drüber gestossen. Da hier keine Punkte wiederhergestellt werden müssen, ist das natürlich einfach.

Hallo Christoph, hallo ajoessen,

besten Dank jetzt auch noch für die Hilfe zur Selbsthilfe. Neuzeichnen war für mich natürlich der erste Gedanke. Da ich nicht auf eine gespeicherte OSM-Datei rückgreifen konnte (sollte ich vielleicht mal in mein Datenmanagement integrieren), bliebe da aber nur neues Abfahren der Strecke oder Bing als Quelle (was in diesem Fall halbwegs möglich gewesen wäre). Aber dabei gibt es natürlich Datenverluste, gerade wenn der Weg auch noch aufgeteilt worden war.

Also war der Sinn meiner Anfrage, ob es da noch eine datenschonendere Möglichkeit gibt. Das Plugin undelete hatte ich entdeckt und es damit versucht, hatte aber eine Fehlermeldung erhalten. Der reverter hört sich richtig gut an (den hatte ich nicht entdeckt), der benötigt aber, wenn ich es richtig verstanden habe, den irgendwie wiederhergestellten Weg, um ihn auswählen zu können. Da wäre ich dann schon hängengeblieben, denn genau das hatte bei mir ja weder mit der Relations-Wiederherstellungs-Methode noch mit undelete geklappt.

In diesem Fall hätte ich den “brutalen” Weg gehen können, die Changesets des Kollegen komplett rückgängig zu machen. Deine Warnung genau davor, Christoph, verstehe ich und würde das auch normalerweise nicht machen, aber ich habe mir gestern noch angesehen (und repariert), was dieser User alles für einen Blödsinn gemacht hat (Autobahnzufahrten im Wohngebiet, unverbundene Linien u.v.m.), sodass das hier kein Verlust gewesen wäre. Hier gebe ich dir recht, vermutlich war das ein Live Edit als eine Art Spielerei, ohne sich vorher über die wichtigsten Grundlagen informiert und ohne sich über die Folgen im Klaren zu sein.

Mit bestem Dank und vielen Grüßen aus der OSM-Provinz

Martin

Hier noch die Zusammenfassung:

  • Prüfen, ob nicht Neuzeichnen möglich und sinnvoll ist (z.B. durch Rückgriff auf gespeicherte Daten als Vorlage oder wenn sich bereits viel geändert hat nach der Löschung)
  • ID des gelöschten Wegs ermitteln (z.B. wenn man selbst mal an diesem Weg gearbeitet hat oder über undelete in Potlatch)
  • Weg wiederherstellen durch undelete-Plugin in JOSM oder indem man versucht, eine alte Version als XML-Datei hochzuladen (JOSM-Anleitung zur Relationswiederherstellung)
  • Weitere Anpassung/Wiederherstellung mit reverter-Plugin in JOSM, bei dem nur die Auswahl schrittweise von Changeset zu Changeset zurückgesetzt wird; ausgewählt werden der Weg und seine Wegpunkte
  • Konflikte in JOSM mit dem Konfliktbearbeitungstool lösen
  • Daten kontrollieren und ggf. nachbearbeiten

Ich habe das gerade mal wieder bei einer PLZ Grenze versucht, und bin nicht glücklich geworden.

Sollte das mit dem Undelete Plugin nicht funktionieren (beim Linien Wiederherstellen will das bei mir manchmal einfach nicht), so besteht die Alternative
das Changeset komplett umzukehren, aber nur die erforderlichen Elemente mit JOSM hochzuladen.

Siehe auch
http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Reverter