Opened 23 months ago
Last modified 87 minutes ago
#6529 new defect
Deleting locally referenced objects in conflict resolution breaks data integrity
| Reported by: | phobie | Owned by: | team |
|---|---|---|---|
| Priority: | critical | Component: | Core |
| Version: | Keywords: | ||
| Cc: | andrei280366@… |
Description (last modified by Don-vip)
- Downloaded a osm-file from geofabrik
- cut out an area with osmosis
- loaded it into JOSM
- Searched for "tourism=*"
- Clicked on file -> update selected
- JOSM told me that it found 3 conflicts (nodes had been deleted on OSM) while my command-list was empty.
- I clicked on resolve
- accepted remote version
- clicked apply and the exception raised...
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2011-07-01 01:31:46
Last Changed Author: stoecker
Revision: 4187
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2011-06-30 18:08:51 +0200 (Thu, 30 Jun 2011)
Last Changed Rev: 4187
Identification: JOSM/1.5 (4187 de)
Memory Usage: 153 MB / 910 MB (41 MB allocated, but free)
Java version: 1.6.0_18, Sun Microsystems Inc., OpenJDK 64-Bit Server VM
Operating system: Linux
Dataset consistency test:
[DELETED REFERENCED] {Way id=29049015 version=9 D nodes=[{Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=662412474 version=2 Vh lat=53.8739184,lon=10.6911367}, {Node id=319513157 version=2 V lat=53.8739354,lon=10.6910824}, {Node id=319513556 version=2 V lat=53.8739277,lon=10.6910798}, {Node id=319513156 version=2 V lat=53.8738342,lon=10.6910195}, {Node id=662412462 version=2 Vh lat=53.8738226,lon=10.6910837}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}]} refers to deleted primitive {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}
[DELETED REFERENCED] {Way id=29049015 version=9 D nodes=[{Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=662412474 version=2 Vh lat=53.8739184,lon=10.6911367}, {Node id=319513157 version=2 V lat=53.8739354,lon=10.6910824}, {Node id=319513556 version=2 V lat=53.8739277,lon=10.6910798}, {Node id=319513156 version=2 V lat=53.8738342,lon=10.6910195}, {Node id=662412462 version=2 Vh lat=53.8738226,lon=10.6910837}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}]} refers to deleted primitive {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}
[DELETED REFERENCED] {Way id=29049015 version=9 D nodes=[{Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=662412474 version=2 Vh lat=53.8739184,lon=10.6911367}, {Node id=319513157 version=2 V lat=53.8739354,lon=10.6910824}, {Node id=319513556 version=2 V lat=53.8739277,lon=10.6910798}, {Node id=319513156 version=2 V lat=53.8738342,lon=10.6910195}, {Node id=662412462 version=2 Vh lat=53.8738226,lon=10.6910837}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}]} refers to deleted primitive {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}
[DELETED REFERENCED] {Way id=119793009 version=2 D nodes=[{Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=319513158 version=2 V lat=53.8737868,lon=10.6913029}, {Node id=319513298 version=4 V lat=53.8738666,lon=10.6913478}, {Node id=319513159 version=2 V lat=53.8738877,lon=10.6912597}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}]} refers to deleted primitive {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}
[DELETED REFERENCED] {Way id=119793009 version=2 D nodes=[{Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=319513158 version=2 V lat=53.8737868,lon=10.6913029}, {Node id=319513298 version=4 V lat=53.8738666,lon=10.6913478}, {Node id=319513159 version=2 V lat=53.8738877,lon=10.6912597}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}]} refers to deleted primitive {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}
[DELETED REFERENCED] {Way id=119793009 version=2 D nodes=[{Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=319513158 version=2 V lat=53.8737868,lon=10.6913029}, {Node id=319513298 version=4 V lat=53.8738666,lon=10.6913478}, {Node id=319513159 version=2 V lat=53.8738877,lon=10.6912597}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}]} refers to deleted primitive {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}
Plugin: OpeningHoursEditor (26219)
Plugin: RoadSigns (26174)
Plugin: SimplifyArea (26174)
Plugin: alignways (26174)
Plugin: editgpx (26174)
Plugin: measurement (26174)
Plugin: openstreetbugs (26174)
Plugin: plastic_laf (26174)
Plugin: public_transport (26174)
Plugin: reverter (26174)
Plugin: turnrestrictions (26174)
Plugin: undelete (26196)
Plugin: waydownloader (26174)
Plugin: wayselector (26174)
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=119793009 version=2 D nodes=[{Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}, {Node id=319513158 version=2 V lat=53.8737868,lon=10.6913029}, {Node id=319513298 version=4 V lat=53.8738666,lon=10.6913478}, {Node id=319513159 version=2 Vh lat=53.8738877,lon=10.6912597}, {Node id=1345044966 version=2 D lat=53.8739056,lon=10.6911907}, {Node id=1345044965 version=2 D lat=53.8738144,lon=10.6911442}]}
at org.openstreetmap.josm.data.osm.Way.checkNodes(Way.java:477)
at org.openstreetmap.josm.data.osm.Way.fireNodesChanged(Way.java:489)
at org.openstreetmap.josm.data.osm.Way.setNodes(Way.java:66)
at org.openstreetmap.josm.data.osm.DataSet.unlinkNodeFromWays(DataSet.java:765)
at org.openstreetmap.josm.data.osm.DataSet.unlinkReferencesToPrimitive(DataSet.java:814)
at org.openstreetmap.josm.command.DeletedStateConflictResolveCommand.executeCommand(DeletedStateConflictResolveCommand.java:67)
at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:53)
at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:36)
at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:58)
at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog$ApplyResolutionAction.actionPerformed(ConflictResolutionDialog.java:265)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:253)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6136)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:5901)
at java.awt.Container.processEvent(Container.java:2105)
at java.awt.Component.dispatchEventImpl(Component.java:4497)
at java.awt.Container.dispatchEventImpl(Container.java:2163)
at java.awt.Component.dispatchEvent(Component.java:4323)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
at java.awt.Container.dispatchEventImpl(Container.java:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4323)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
at java.awt.EventQueue.access$000(EventQueue.java:96)
at java.awt.EventQueue$1.run(EventQueue.java:608)
at java.awt.EventQueue$1.run(EventQueue.java:606)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
at java.awt.EventQueue$2.run(EventQueue.java:622)
at java.awt.EventQueue$2.run(EventQueue.java:620)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)
at java.awt.Dialog$1.run(Dialog.java:1072)
at java.awt.Dialog$3.run(Dialog.java:1126)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1124)
at java.awt.Component.show(Component.java:1492)
at java.awt.Component.setVisible(Component.java:1444)
at java.awt.Window.setVisible(Window.java:842)
at java.awt.Dialog.setVisible(Dialog.java:1011)
at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog.setVisible(ConflictResolutionDialog.java:117)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog.resolve(ConflictDialog.java:150)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog.access$000(ConflictDialog.java:58)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog$1.mouseClicked(ConflictDialog.java:87)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:270)
at java.awt.Component.processMouseEvent(Component.java:6139)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:5901)
at java.awt.Container.processEvent(Container.java:2105)
at java.awt.Component.dispatchEventImpl(Component.java:4497)
at java.awt.Container.dispatchEventImpl(Container.java:2163)
at java.awt.Component.dispatchEvent(Component.java:4323)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4134)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
at java.awt.Container.dispatchEventImpl(Container.java:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4323)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
at java.awt.EventQueue.access$000(EventQueue.java:96)
at java.awt.EventQueue$1.run(EventQueue.java:608)
at java.awt.EventQueue$1.run(EventQueue.java:606)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
at java.awt.EventQueue$2.run(EventQueue.java:622)
at java.awt.EventQueue$2.run(EventQueue.java:620)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
Attachments (1)
Change History (13)
Changed 23 months ago by phobie
comment:1 Changed 23 months ago by stoecker
- Priority changed from normal to major
- Summary changed from exception during conflict resolution to Deleting locally referenced objects in conflict resolution breaks data integrity
Additional description: Whenever an object is still referenced locally and conflict resolution deletes it, the result is a dataset integrity error. Conflict resolution either should also remove references or prevent resolving as long as there are references.
References are already displayed, but not handled correctly.
comment:2 Changed 23 months ago by rickmastfan67
Is this bug of mine (#6527) possibly the same thing?
comment:3 Changed 20 months ago by Don-vip
- Description modified (diff)
comment:4 Changed 4 months ago by Don-vip
Ticket #8374 has been marked as a duplicate of this ticket.
comment:5 Changed 4 months ago by Don-vip
- Cc andrei280366@… added
- Description modified (diff)
comment:6 Changed 4 months ago by Don-vip
Ticket #8216 has been marked as a duplicate of this ticket.
comment:7 Changed 2 months ago by Don-vip
Ticket #8507 has been marked as a duplicate of this ticket.
comment:8 Changed 2 months ago by Don-vip
Ticket #5555 has been marked as a duplicate of this ticket.
comment:9 Changed 7 weeks ago by Don-vip
Ticket #8572 has been marked as a duplicate of this ticket.
comment:10 Changed 7 weeks ago by Don-vip
- Priority changed from major to critical
comment:11 Changed 6 days ago by skyper
Ticket #8719 has been marked as a duplicate of this ticket.
comment:12 Changed 87 minutes ago by rickmastfan67
I've found a reliable way to cause this to happen so that it can be fixed hopefully.
Steps to reproduce 100% of the time:
- First, have the "reverter" plugin installed.
- Menu > History > Revert Changeset
- Enter the following changeset for a full revert: 15801944
- Once the changeset is reverted, find the following node in the conflict menu: 2274173371
- Once you have found that node and have highlighted it, hit the "Select" button in the Conflict area.
- Now, Menu > Edit > Purge (must have the utilsplugin2 plugin installed)
- Next, reselect the node in the conflict section and hit "resolve".
- Select either side in the "Deleted State" section (either side causes this problem) and hit the "Apply Resolution" button.
What happens:
JOSM crashes with an error message (at the bottom of this message).
What should happen:
JOSM should just ignore the error since you've purged the item which is as good as applying a resolution.
Also, after the error shows up, I'm unable to undo any changes that I've done (not good).
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2013-05-19 01:34:41
Last Changed Author: akks
Revision: 5966
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2013-05-18 20:15:51 +0200 (Sat, 18 May 2013)
Last Changed Rev: 5966
Identification: JOSM/1.5 (5966 en) Windows 7 64-Bit
Memory Usage: 218 MB / 2730 MB (77 MB allocated, but free)
Java version: 1.7.0_21, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
VM arguments: [-Xmx3072M]
Dataset consistency test: No problems found
Plugin: ImageryCache (29484)
Plugin: OpeningHoursEditor (29435)
Plugin: buildings_tools (29596)
Plugin: mapdust (29525)
Plugin: measurement (29579)
Plugin: mirrored_download (29505)
Plugin: openstreetbugs (29435)
Plugin: osmarender (29435)
Plugin: reverter (29561)
Plugin: turnrestrictions (29435)
Plugin: undelete (29555)
Plugin: utilsplugin2 (29435)
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Node id=2274173371 version=2 MVDT lat=33.0069029,lon=-81.3083172}
at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDataset(OsmPrimitive.java:333)
at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:947)
at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:968)
at org.openstreetmap.josm.command.DeletedStateConflictResolveCommand.fillModifiedData(DeletedStateConflictResolveCommand.java:86)
at org.openstreetmap.josm.command.Command.executeCommand(Command.java:86)
at org.openstreetmap.josm.command.DeletedStateConflictResolveCommand.executeCommand(DeletedStateConflictResolveCommand.java:55)
at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:52)
at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:36)
at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:58)
at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog$ApplyResolutionAction.actionPerformed(ConflictResolutionDialog.java:210)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog.setVisible(ConflictResolutionDialog.java:61)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog.resolve(ConflictDialog.java:188)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog.access$400(ConflictDialog.java:65)
at org.openstreetmap.josm.gui.dialogs.ConflictDialog$ResolveAction.actionPerformed(ConflictDialog.java:415)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)



OSM-file of the centre of Lübeck, osmosis extract out of schleswig-holstein.osm.bz2, copyright CC-BY-SA by OpenStreetMap and contributors