Modify

Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#12314 closed defect (fixed)

Validator fix fails on deleting relation

Reported by: SanderH Owned by: team
Priority: normal Milestone: 16.02
Component: Core validator Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Due to a bug in another plugin, I had some objects created duplicate
  2. Run the validator
  3. There is 1 duplicate relation error and 3 relation is empty errors
  4. Click Fix to fix while the toplevel 'Errors' is selected
  5. Crash

What is the expected result?

JOSM should know that the relation is already deleted in a previous category and not fail

What happens instead?

Crash message

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

Attached a small saved JOSM session.

Don't upload to OSM as the buildings were demolished a few years ago.

URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2016-01-06 17:30:31 +0100 (Wed, 06 Jan 2016)
Build-Date:2016-01-06 16:32:31
Revision:9329
Relative:URL: ^/trunk

Identification: JOSM/1.5 (9329 en) Windows 10 64-Bit
Memory Usage: 1109 MB / 1806 MB (624 MB allocated, but free)
Java version: 1.8.0_66, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
VM arguments: [-Djava.security.manager, -Djava.security.policy=file:C:\Program Files\Java\jre1.8.0_66\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=C:\Users\Sander\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\56\1ee8cfb8-2deaec8f, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.splashport=32586, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm.jnlp, -Djnlpx.jvm=<java.home>\bin\javaw.exe, -Djnlpx.vmargs=LURqYXZhLnV0aWwuQXJyYXlzLnVzZUxlZ2FjeU1lcmdlU29ydD10cnVlAC1Eam5scC5hcHBsaWNhdGlvbi5ocmVmPWh0dHBzOi8vam9zbS5vcGVuc3RyZWV0bWFwLmRlL2Rvd25sb2FkL2pvc20uam5scAA=]
Dataset consistency test: No problems found

Plugins:
- DirectDownload (31934)
- FixAddresses (31772)
- Mapillary (31895)
- OpeningHoursEditor (31772)
- PicLayer (31895)
- apache-commons (31895)
- apache-http (31895)
- download_along (31772)
- ejml (31895)
- geotools (31895)
- graphview (31895)
- jts (31772)
- measurement (31895)
- ods-bag (0.6.5)
- opendata (31937)
- opendataservices (0.6.5)
- poly (31772)
- reverter (31897)
- scripting (30722)
- turnlanes (31772)
- undelete (31895)
- utilsplugin2 (31895)

Last errors/warnings:
- W: Unable to remove primitives from TestError [tester=org.openstreetmap.josm.data.validation.tests.CrossingWays$Ways@ac0d27c3, code=601, message=Crossing buildings]
- E: java.lang.AssertionError: Data consistency problem - relation with missing member detected
- E: java.lang.AssertionError: Data consistency problem - relation with missing member detected
- E: java.lang.AssertionError: Data consistency problem - relation with missing member detected
- E: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException. Cause: java.lang.reflect.InvocationTargetException. Cause: java.lang.IllegalArgumentException: {Relation id=-125335 version=0 MVDT]} is already deleted

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at org.openstreetmap.josm.gui.dialogs.ValidatorDialog$FixTask.realRun(ValidatorDialog.java:667)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:93)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:161)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
	at java.awt.EventQueue.invokeAndWait(Unknown Source)
	at java.awt.EventQueue.invokeAndWait(Unknown Source)
	at javax.swing.SwingUtilities.invokeAndWait(Unknown Source)
	at org.openstreetmap.josm.gui.dialogs.ValidatorDialog$FixTask.fixError(ValidatorDialog.java:610)
	at org.openstreetmap.josm.gui.dialogs.ValidatorDialog$FixTask.realRun(ValidatorDialog.java:643)
	... 7 more
Caused by: java.lang.IllegalArgumentException: {Relation id=-125335 version=0 MVDT]} is already deleted
	at org.openstreetmap.josm.command.DeleteCommand.executeCommand(DeleteCommand.java:126

Attachments (1)

josm error fix failure.joz (33.9 KB ) - added by SanderH 8 years ago.
small JOSM session where the issue can be replicated

Download all attachments as: .zip

Change History (4)

by SanderH, 8 years ago

Attachment: josm error fix failure.joz added

small JOSM session where the issue can be replicated

comment:1 by Klumbumbus, 8 years ago

Component: CoreCore validator

comment:2 by simon04, 8 years ago

Resolution: fixed
Status: newclosed

In 9359/josm:

fix #12314 - Validator: do not attempt to delete twice

comment:3 by simon04, 8 years ago

Milestone: 16.02

Thanks for the easily reproducible description plus example file :).

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


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