﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
5778	Can't undelete relations results into never ending cascading error messages	anonymous	Nakor	"I was just trying to un-delete a relation that somebody accidentally deleted the other day (relation: 452597).  When I did that, nothing was restored in JOSM.  Then, for the fun of it, I just hit Ctrl-A to see if I could somehow select it if it was really un-deleted, but wasn't shown.  When I did that, JOSM threw up an error message.

{{{
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2010-12-24 02:31:25
Last Changed Author: Upliner
Revision: 3740
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2010-12-23 15:38:34 +0100 (Thu, 23 Dec 2010)
Last Changed Rev: 3740

Identification: JOSM/1.5 (3740 en)
Memory Usage: 94 MB / 455 MB (33 MB allocated, but free)
Java version: 1.6.0_23, Sun Microsystems Inc., Java HotSpot(TM) 64-Bit Server VM
Operating system: Windows 7

Dataset consistency test:
[COMPLETE WITHOUT COORDINATES] {Node id=-1 version=0 MVT } is not incomplete but has null coordinates
Exception during dataset integrity test:
java.lang.NullPointerException
	at org.openstreetmap.josm.data.osm.DatasetConsistencyTest.searchNodes(DatasetConsistencyTest.java:82)
	at org.openstreetmap.josm.data.osm.DatasetConsistencyTest.runTest(DatasetConsistencyTest.java:143)
	at org.openstreetmap.josm.data.osm.DatasetConsistencyTest.runTests(DatasetConsistencyTest.java:157)
	at org.openstreetmap.josm.actions.ShowStatusReportAction.getReportHeader(ShowStatusReportAction.java:69)
	at org.openstreetmap.josm.tools.BugReportExceptionHandler.handleException(BugReportExceptionHandler.java:94)
	at org.openstreetmap.josm.tools.BugReportExceptionHandler.handle(BugReportExceptionHandler.java:43)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.awt.EventDispatchThread.handleException(Unknown Source)
	at java.awt.EventDispatchThread.processException(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)


Plugin: Create_grid_of_ways (21706)
Plugin: OpeningHoursEditor (24290)
Plugin: RoadSigns (22850)
Plugin: alignways (24815)
Plugin: buildings_tools (23804)
Plugin: colorscheme (21563)
Plugin: download_along (22427)
Plugin: imageryadjust (24866)
Plugin: measurement (22547)
Plugin: michigan_left (22369)
Plugin: openstreetbugs (23747)
Plugin: openvisible (21706)
Plugin: osmarender (22765)
Plugin: restart (24396)
Plugin: reverter (23278)
Plugin: routing (23561)
Plugin: tageditor (21026)
Plugin: tagging-preset-tester (22454)
Plugin: terracer (24713)
Plugin: turnrestrictions (24125)
Plugin: undelete (22365)
Plugin: utilsplugin2 (24792)
Plugin: walkingpapers (22549)
Plugin: waydownloader (21706)
Plugin: wayselector (23103)

java.lang.NullPointerException
	at org.openstreetmap.josm.data.osm.visitor.paint.MapPaintVisitor.drawNode(MapPaintVisitor.java:114)
	at org.openstreetmap.josm.data.osm.visitor.paint.MapPaintVisitor.visitAll(MapPaintVisitor.java:660)
	at org.openstreetmap.josm.gui.layer.OsmDataLayer.paint(OsmDataLayer.java:268)
	at org.openstreetmap.josm.gui.MapView.paintLayer(MapView.java:448)
	at org.openstreetmap.josm.gui.MapView.paint(MapView.java:527)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JSplitPane.paintChildren(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at javax.swing.JComponent.paintToOffscreen(Unknown Source)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
	at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
	at javax.swing.RepaintManager.paint(Unknown Source)
	at javax.swing.JComponent._paintImmediately(Unknown Source)
	at javax.swing.JComponent.paintImmediately(Unknown Source)
	at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
	at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
	at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source)
	at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(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)

}}}

Then JOSM kept throwing up more error messages making it almost impossible to shut it down.  And every time I looked at the error report, it was different from the last!  So, I found a major cascading bug that could annoy the heck out of anybody because it never ends! (if it ends on your end, you got lucky)  The only way I could get JOSM to close was to crash Java via the task manager, hence the ""Blocker"" tag."	defect	new	blocker		Plugin undelete	latest		undelete; relations; cascading error messages	
