Modify

Opened 16 months ago

Last modified 3 months ago

#19331 new defect

AssertionError after download, purge, download, undo

Reported by: anonymous Owned by: team
Priority: normal Milestone:
Component: Core Version: latest
Keywords: template_report undo purge command stack Cc: GerdP

Description

What steps will reproduce the problem?

What is the expected result?

What happens instead?

Please provide any additional information below. Attach a screenshot if possible.

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-04-06 02:17:07 +0200 (Mon, 06 Apr 2020)
Build-Date:2020-04-06 00:18:43
Revision:16239
Relative:URL: ^/trunk

Identification: JOSM/1.5 (16239 de) Linux Ubuntu 18.04.4 LTS
Memory Usage: 650 MB / 2196 MB (287 MB allocated, but free)
Java version: 1.8.0_181-b13, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: :0.0 1280x1024
Maximum Screen Size: 1280x1024
fonts-noto: fonts-noto:all-20171026-2
VM arguments: [-Djosm.restart=true, -Djava.net.useSystemProxies=true]
Dataset consistency test: No problems found

Plugins:
+ reverter (35409)
+ undelete (35405)
+ utilsplugin2 (35405)

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/sac_scale&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1

Last errors/warnings:
- E: Cannot change visibility for -114075 null V NODE null:: java.lang.IllegalStateException: Ein Objekt mit Kennung = 0 darf nicht unsichtbar sein.
- W: Konflikte gefunden - <html>2 Konflikte wurden entdeckt.</html>
- W: Konflikte gefunden - <html>1 Konflikt wurde entdeckt.</html>
- E: Handled by bug report queue: java.lang.AssertionError: Primitive {Node id=359912907 version=4 V lat=47.2803681,lon=11.3959247} was removed when purging, but is still there on undo


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (16) of main
java.lang.AssertionError: Primitive {Node id=359912907 version=4 V lat=47.2803681,lon=11.3959247} was removed when purging, but is still there on undo
	at org.openstreetmap.josm.command.PurgeCommand.lambda$undoCommand$1(PurgeCommand.java:136)
	at org.openstreetmap.josm.data.osm.DataSet.update(DataSet.java:967)
	at org.openstreetmap.josm.command.PurgeCommand.undoCommand(PurgeCommand.java:126)
	at org.openstreetmap.josm.data.UndoRedoHandler.lambda$undo$0(UndoRedoHandler.java:380)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWait(GuiHelper.java:217)
	at org.openstreetmap.josm.data.UndoRedoHandler.undo(UndoRedoHandler.java:372)
	at org.openstreetmap.josm.data.UndoRedoHandler.undo(UndoRedoHandler.java:362)
	at org.openstreetmap.josm.actions.UndoAction.actionPerformed(UndoAction.java:39)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	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:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Attachments (0)

Change History (10)

comment:1 Changed 16 months ago by simon04

Keywords: undo purge remotecontrol added

Steps to reproduce would be very helpful. A combination of purge and download apparently triggers this exception.

comment:2 Changed 16 months ago by skyper

Owner: changed from team to anonymous
Status: newneedinfo

We need more info as it depends on the settings if the command stack is kept when purging. I it is not kept, an undo will not work.

Is it reproducible? How? Please, add a step by step description and the remote control link you used. Thanks

comment:3 Changed 16 months ago by simon04

Owner: changed from anonymous to team
Status: needinfonew

To reproduce,

  1. Download any bounding box
  2. Purge a way
  3. Download the same bounding box again
  4. Undo

comment:4 Changed 16 months ago by simon04

Summary: Undo after remote control loadingAssertionError after download, purge, download, undo

comment:5 Changed 3 months ago by skyper

Ticket #20323 has been marked as a duplicate of this ticket.

comment:6 Changed 3 months ago by skyper

Ticket #20700 has been marked as a duplicate of this ticket.

comment:7 Changed 3 months ago by skyper

Cc: GerdP added
Keywords: command stack added; remotecontrol removed
Version: latest

See my comment on #20700 for a complete report.

comment:8 Changed 3 months ago by skyper

See also #5846, #7489 and #11333.

comment:9 Changed 3 months ago by GerdP

What's the wanted behaviour here?

comment:10 Changed 3 months ago by skyper

#7489 is about undoing download and merge action.

From a user perspective, I tried to revert the purge action and did not care about the download/merge and would have expected object version conflicts.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to anonymous
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from team to anonymous.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.