Modify

Opened 4 years ago

Last modified 3 years 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 by simon04, 4 years ago

Keywords: undo purge remotecontrol added

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

comment:2 by skyper, 4 years ago

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 by simon04, 4 years ago

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 by simon04, 4 years ago

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

comment:5 by skyper, 3 years ago

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

comment:6 by skyper, 3 years ago

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

comment:7 by skyper, 3 years ago

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

See my comment on #20700 for a complete report.

comment:8 by skyper, 3 years ago

See also #5846, #7489 and #11333.

comment:9 by GerdP, 3 years ago

What's the wanted behaviour here?

comment:10 by skyper, 3 years ago

#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. Next status will be 'closed'.
to The owner will be changed from team to the specified user.
Next status will be 'needinfo'. The owner will be changed from team to anonymous.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.
The owner will be changed from team to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.