Modify

Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#19680 closed defect (fixed)

Error when reverting changeset with JOSM reverter plugin

Reported by: mboeringa Owned by: GerdP
Priority: normal Milestone:
Component: Plugin reverter Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Open JOSM
  2. Go to Tripoli, Lebanon and download some data
  3. Load the 'Reverter' plugin of JOSM
  4. Choose 'Data/Revert changeset' from the menu
  5. Enter changeset number '86632959', this is a set of badly digitized buildings (triangles, sometimes multiple for a single building) I wanted to revert.
  6. JOSM will now show 61 conflicts.
  7. Select all of them in the window showing them
  8. Right click and choose 'Resolve to my versions'
  9. JOSM will now open its bug reporting dialog showing the "Unexpected exception occured" error.

What is the expected result?

Conflicts resolved without error / exception thrown

What happens instead?

Exception thrown

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-07-30 12:44:04 +0200 (Thu, 30 Jul 2020)
Build-Date:2020-07-31 01:30:49
Revision:16812
Relative:URL: ^/trunk

Identification: JOSM/1.5 (16812 en) Windows 10 64-Bit
OS Build number: Windows 10 Home 2004 (19041)
Memory Usage: 248 MB / 989 MB (76 MB allocated, but free)
Java version: 1.8.0_261-b12, Oracle Corporation, Java HotSpot(TM) Client VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 2560x1440 (scaling 1.0x1.0)
Maximum Screen Size: 2560x1440
Best cursor sizes: 16x16 -> 32x32, 32x32 -> 32x32

Dataset consistency test:
[DELETED REFERENCED] {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} refers to deleted primitive {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}
[DELETED REFERENCED] {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} refers to deleted primitive {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}
[DELETED REFERENCED] {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} refers to deleted primitive {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}
[DELETED REFERENCED] {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} refers to deleted primitive {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}
[DELETED REFERENCED] {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} refers to deleted primitive {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}
[WAY NOT IN REFERRERS] {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003} is part of {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} but is not in referrers
[WAY NOT IN REFERRERS] {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624} is part of {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} but is not in referrers
[WAY NOT IN REFERRERS] {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635} is part of {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} but is not in referrers
[WAY NOT IN REFERRERS] {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015} is part of {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} but is not in referrers
[WAY NOT IN REFERRERS] {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003} is part of {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} but is not in referrers


Plugins:
+ changeset-viewer (22)
+ merge-overlap (35248)
+ reverter (35499)
+ turnrestrictions (35515)
+ utilsplugin2 (35487)

Last errors/warnings:
- W: java.net.SocketTimeoutException: Read timed out
- W: Conflicts detected - <html>There were 61 conflicts detected.</html>
- E: Handled by bug report queue: org.openstreetmap.josm.tools.bugreport.ReportedException: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} (changed by the following commands: [Revert changeset 86632959]). Cause: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} (changed by the following commands: [Revert changeset 86632959])


=== REPORTED CRASH DATA ===
sequence_information:
 - sequence_name: Sequence: Resolve to my versions
 - sequence_command: Sequence: Conflict Resolution
 - sequence_index: 60
 - sequence_commands: [org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand;org.openstreetmap.josm.command.SequenceCommand]
 - sequence_commands_descriptions: [Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution;Sequence: Conflict Resolution]

BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (16) of main
ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} (changed by the following commands: [Revert changeset 86632959]), methodWarningFrom=null]
	at org.openstreetmap.josm.command.SequenceCommand.createReportedException(SequenceCommand.java:146)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:114)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:300)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:354)
	at org.openstreetmap.josm.gui.dialogs.ConflictDialog$ResolveToAction.actionPerformed(ConflictDialog.java:525)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.AbstractButton.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
	at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(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)
Caused by: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=815943118 version=1 VT nodes=[{Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}, {Node id=7620492587 version=1 MVD lat=34.4255056,lon=35.838624}, {Node id=7620492588 version=1 MVD lat=34.4253884,lon=35.8387635}, {Node id=7620492589 version=1 MVD lat=34.4254658,lon=35.8391015}, {Node id=7620492586 version=1 MVD lat=34.4255875,lon=35.8389003}]} (changed by the following commands: [Revert changeset 86632959])
	at org.openstreetmap.josm.data.osm.Way.checkNodes(Way.java:537)
	at org.openstreetmap.josm.data.osm.Way.fireNodesChanged(Way.java:555)
	at org.openstreetmap.josm.data.osm.Way.setDeleted(Way.java:457)
	at org.openstreetmap.josm.command.conflict.DeletedStateConflictResolveCommand.deleteMy(DeletedStateConflictResolveCommand.java:83)
	at org.openstreetmap.josm.command.conflict.DeletedStateConflictResolveCommand.executeCommand(DeletedStateConflictResolveCommand.java:60)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	... 43 more

=== RUNNING THREADS ===
Thread: TMS-downloader-20 (71) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Finalizer (3) of system
java.lang.Object.wait(Native Method)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

Thread: TMS-downloader-6 (57) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-3 (54) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Timer-2 (122) of main
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Unknown Source)
java.util.TimerThread.mainLoop(Unknown Source)
java.util.TimerThread.run(Unknown Source)

Thread: TMS-downloader-2 (53) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-12 (63) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: styled-map-renderer-26 (178) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: File Watcher (21) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.take(Unknown Source)
sun.nio.fs.AbstractWatchService.take(Unknown Source)
org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:120)
org.openstreetmap.josm.io.FileWatcher$$Lambda$159/10942913.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-24 (75) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-10 (61) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Timer-0 (49) of main
java.lang.Object.wait(Native Method)
java.util.TimerThread.mainLoop(Unknown Source)
java.util.TimerThread.run(Unknown Source)

Thread: Java2D Disposer (10) of system
java.lang.Object.wait(Native Method)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
sun.java2d.Disposer.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Reference Handler (2) of system
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Unknown Source)
java.lang.ref.Reference.tryHandlePending(Unknown Source)
java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)

Thread: styled-map-renderer-27 (182) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: TMS-downloader-22 (73) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: message-notifier-0 (45) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TimerQueue (18) of system
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.DelayQueue.take(Unknown Source)
javax.swing.TimerQueue.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-18 (69) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-9 (60) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-0 (51) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-23 (74) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Thread-5 (20) of main
sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus0(Native Method)
sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus(Unknown Source)
sun.nio.fs.WindowsWatchService$Poller.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Map Status Collector (126) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:433)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-19 (70) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-8 (59) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Timer-1 (50) of main
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Unknown Source)
java.util.TimerThread.mainLoop(Unknown Source)
java.util.TimerThread.run(Unknown Source)

Thread: DestroyJavaVM (47) of main

Thread: TMS-downloader-11 (62) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-4 (55) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: AWT-Windows (13) of system
sun.awt.windows.WToolkit.eventLoop(Native Method)
sun.awt.windows.WToolkit.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Attach Listener (5) of system

Thread: TMS-downloader-1 (52) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: changeset-updater-0 (46) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Signal Dispatcher (4) of system

Thread: styled-map-renderer-19 (170) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-3 (181) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: main-worker-0 (118) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: AWT-Shutdown (17) of system
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Unknown Source)
sun.awt.AWTAutoShutdown.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-14 (65) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: Weak reference cleaner (22) of main
java.lang.Object.wait(Native Method)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.lang.ref.ReferenceQueue.remove(Unknown Source)
org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60)
org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda$195/4265492.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: styled-map-renderer-29 (184)
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: AWT-EventQueue-0 (16) of main
Stacktrace see above.

Thread: JCS-ElementEventQueue-Thread-7 (43) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-15 (66) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-2 (35) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-7 (179)
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: styled-map-renderer-23 (175) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: TMS-downloader-13 (64) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-17 (68) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: styled-map-renderer-28 (183) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: TMS-downloader-16 (67) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-7 (58) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-0 (163)
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: TMS-downloader-21 (72) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Thread: TMS-downloader-5 (56) of main
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:109)
org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:29)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Attachments (3)

Tripoli_ticket_19680.zip (411.7 KB ) - added by mboeringa 4 years ago.
Zip file with Tripoli data for reproducing issue dated 16-8-2020
josm_19680_multi_layer_session.joz (1.0 MB ) - added by skyper 4 years ago.
Session with all possible states as layers (sadly conflicts are not saved)
19680.patch (1.9 KB ) - added by GerdP 4 years ago.

Download all attachments as: .zip

Change History (23)

comment:1 by anonymous, 4 years ago

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

comment:2 by skyper, 4 years ago

Thanks for this complete report. To make it 120% we need a osm file with the objects in question in there current state. As the data evolves, conflicts will change.

I have one more question:
What is you setting under preferences -> connection settings -> Overpass server, about using Overpass to download objects. Is the checkbox checked or unchecked?

Does it work if you first solve all conflicts on nodes, than ways and last relations?

Alternatively, you can try to download all objects of the changeset through changeset manager and than revert. Maybe, that will work.

by mboeringa, 4 years ago

Attachment: Tripoli_ticket_19680.zip added

Zip file with Tripoli data for reproducing issue dated 16-8-2020

comment:3 by skyper, 4 years ago

Actually, I can not reproduce, if I revert the changeset into a new layer and solve all 60 conflicts. One conflict is missing, either data on the server changed or you have modified the data downloaded prior to reverting

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-08-15 16:17:53 +0200 (Sat, 15 Aug 2020)
Revision:16895
Build-Date:2020-08-16 01:30:50
URL:https://josm.openstreetmap.de/svn/trunk

Dataset consistency test: No problems found

Plugins:
+ reverter (35499)
+ undelete (35499)
+ utilsplugin2 (35487)

Last errors/warnings:
- W: Conflicts detected - <html>There were 60 conflicts detected.</html>
- W: Conflicts detected - <html>There were 60 conflicts detected.</html>

comment:4 by anonymous, 4 years ago

@skyper,

The "Use Overpass server for object downloads" option is unchecked in my Preferences settings.

comment:5 by mboeringa, 4 years ago

@skyper,

There is one automatic step I see happening that I didn't include in the list of steps: apparently, the initial download did not contain all objects part of the changeset, so once I enter the changeset number, the JOSM Reverter plugin prompts me with the following message:

"This changeset has objects that are not present in current dataset.
It is needed to download them before reverting. Do you want to continue."

I then click "Yes". But this particular message is actually ambiguous (maybe I need to open second ticket for that...), does clicking "Yes" for this message mean JOSM will automatically download the missing objects, or continue with the issue still present?

comment:6 by anonymous, 4 years ago

@skyper,

Weird you only have 60 conflicts..., there is absolutely nothing else I do besides clicking the "Yes" on the warning I posted above, and I get consistently 61 conflicts, one way "building", the rest just nodes without tags as far as I can see.

The building feature is this one by the way:
https://www.openstreetmap.org/way/815943118

I do notice you are running a newer build (16895), I only have the latest Windows build (16812), maybe the issue was resolved in the mean time?

by skyper, 4 years ago

Session with all possible states as layers (sadly conflicts are not saved)

comment:7 by skyper, 4 years ago

Yes, with your example I can reproduce. Your are right about the way. I tried to produce a session with as many states as possible. Sadly, conflicts are not saved, but maybe, it helps.

Version should not matter. Nothing was changed regarding this issue.

Thanks for this report.

Still do not understand what is going on.

comment:8 by skyper, 4 years ago

So, reverting to new layer, solving 60 conflicts to "my version" and than either merging "Tripolis.osm" to reverter layer, solving one conflict on the way to "my version" or merging reverter layer to "Tripolis.osm", solving five conflicts on the node and its children nodes to "their version" works without exception.

Was not sure again about the order of object types, but first solving the conflict one the way with the 61 conflict does also produce the exception.

in reply to:  5 comment:9 by skyper, 4 years ago

Replying to marco@…:

the JOSM Reverter plugin prompts me with the following message:

"This changeset has objects that are not present in current dataset.
It is needed to download them before reverting. Do you want to continue."

Oh, I do not get this message in expert mode.

I then click "Yes". But this particular message is actually ambiguous (maybe I need to open second ticket for that...), does clicking "Yes" for this message mean JOSM will automatically download the missing objects, or continue with the issue still present?

Yes, another ticket.

comment:10 by anonymous, 4 years ago

@skyper,

Good to hear you managed to reproduce the issue with the provided data. I simply downloaded the data using JOSM's options for this, so nothing special.

I can confirm that the message that prompts for downloading data does not appear with the saved data as I attached with the ticket when I use the File/Open option, but that is logical because I think I saved it after a first attempt to revert the changeset, which prompts for downloading missing objects, and then choosing "Undo" to undo the revert and save the data. The Undo will undo the revert, but likely not the extra downloaded data, so based on the saved data, you are not prompted for missing objects.

This also likely answers my question mark about the "ambiguous" warning message regarding the prompt for downloading data: so yes, JOSM does seem to automatically download missing objects when you choose 'Yes' as I did.

comment:11 by GerdP, 4 years ago

Owner: changed from team to GerdP
Status: newassigned

I can reproduce the problem. Something special seems to happen here because the building that causes the bug was added to a turn restriction (!) later.

by GerdP, 4 years ago

Attachment: 19680.patch added

comment:12 by GerdP, 4 years ago

The problem is that the reverter does not create conflicts for the nodes of the way 815943118 because it "thinks" that this way will be deleted, but instead the way is added to the conflict list. This happens because the nodes are processed before the parent way.
The patch changes the order so that the objects to be deleted are processed in the order relations->ways->nodes.
This solves this problem but might not be enough for the rare case were relations are members of relations.

comment:13 by GerdP, 4 years ago

Component: CorePlugin reverter

comment:14 by GerdP, 4 years ago

fixed, see [35556-35557/osm]

Last edited 4 years ago by GerdP (previous) (diff)

comment:15 by GerdP, 4 years ago

Resolution: fixed
Status: assignedclosed

comment:16 by Klumbumbus, 4 years ago

You can now reference tickets for plugin changes the same way like for core changes in the commit message, i.e. e.g. #19680

comment:17 by GerdP, 4 years ago

Does that mean I don't have to use #josm19160 in the svn commit message and the log message will appear in the ticket?

comment:18 by mboeringa, 4 years ago

@GerdP: Thanks for working on this and providing a fix!

in reply to:  18 comment:19 by GerdP, 4 years ago

Replying to mboeringa:

@GerdP: Thanks for working on this and providing a fix!

Thanks for the data that allowed to reproduce it!

in reply to:  17 comment:20 by Klumbumbus, 4 years ago

Replying to GerdP:

Does that mean I don't have to use #josm19160 in the svn commit message and the log message will appear in the ticket?

Yes, simply ommit the "josm" between the # and the number.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain GerdP.
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.