Opened 11 years ago

Last modified 9 years ago

#10986 closed defect

adding way to undeleted relation with deleted members creates error — at Version 1

Reported by: malenki Owned by: team
Priority: normal Milestone:
Component: Core Version: latest
Keywords: Cc: skyper

Description (last modified by malenki)

Tested with
factory default ~/.josm
r7968
java version "1.7.0_65"
OpenJDK Runtime Environment (IcedTea 2.5.3) (7u71-2.5.3-2)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)

See also #10985

How to reproduce:

  • undelete a relation (e.g. https://www.openstreetmap.org/relation/1310659)
  • select the relation (mark all data to "see" it, select it by double clicking it in the selection panel)
  • right-click the relation and "download missing members"
  • add a way to the relation (select the relation (mark all data to "see" it, select it by double clicking it in the selection panel, right click and select edit)
  • clicking OK gives the following error:
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2015-01-16 02:35:19
Last Changed Author: Klumbumbus
Revision: 7968
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Relative URL: ^/trunk
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2015-01-15 22:47:05 +0100 (Thu, 15 Jan 2015)
Last Changed Rev: 7968

Identification: JOSM/1.5 (7968 de) Linux Debian GNU/Linux 8.0 (jessie)
Memory Usage: 430 MB / 12444 MB (189 MB allocated, but free)
Java version: 1.7.0_65, Oracle Corporation, OpenJDK 64-Bit Server VM
Java package: openjdk-7-jre:amd64-7u71-2.5.3-2
VM arguments: [-Dsun.java2d.opengl=false]

Dataset consistency test:
[DELETED REFERENCED] {Relation id=1310659 version=2 MT [Linie -20, Linie 88609546]} refers to deleted primitive {Way id=88609546 version=2 D nodes=[]}


Plugins:
- reverter (30892)
- undelete (30892)

Last errors/warnings:
- E: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted member referenced: {Relation id=1310659 version=2 MT [Linie -20, Linie 88609546]}

org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted member referenced: {Relation id=1310659 version=2 MT [Linie -20, Linie 88609546]}
	at org.openstreetmap.josm.data.osm.Relation.checkMembers(Relation.java:494)
	at org.openstreetmap.josm.data.osm.Relation.fireMembersChanged(Relation.java:501)
	at org.openstreetmap.josm.data.osm.Relation.setMembers(Relation.java:63)
	at org.openstreetmap.josm.data.osm.Relation.cloneFrom(Relation.java:233)
	at org.openstreetmap.josm.command.ChangeCommand.executeCommand(ChangeCommand.java:65)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:43)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:69)
	at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor$SavingAction.applyExistingNonConflictingRelation(GenericRelationEditor.java:1255)
	at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor$OKAction.run(GenericRelationEditor.java:1368)
	at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor$OKAction.actionPerformed(GenericRelationEditor.java:1376)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6516)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
	at java.awt.Component.processEvent(Component.java:6281)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4872)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
	at java.awt.EventQueue.access$200(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:694)
	at java.awt.EventQueue$3.run(EventQueue.java:692)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:708)
	at java.awt.EventQueue$4.run(EventQueue.java:706)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

Change History (1)

comment:1 by malenki, 11 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.