Modify

Opened 4 years ago

Closed 4 years ago

#20364 closed defect (fixed)

ConcurrentModificationException at MapillaryData.searchNodes

Reported by: GhostFoxSledgehammer Owned by: taylor.smock
Priority: normal Milestone:
Component: Plugin mapillary Version: tested
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Simply Download images with the latest plugin.

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

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-12-28 22:03:23 +0100 (Mon, 28 Dec 2020)
Revision:17428
Build-Date:2020-12-29 02:30:53
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (17428 en) Windows 10 64-Bit
OS Build number: Windows 10 Home Single Language 2004 (19041)
Memory Usage: 535 MB / 2048 MB (175 MB allocated, but free)
Java version: 15.0.1+9-18, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.25×1.25)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
Dataset consistency test: No problems found

Plugins:
+ Mapillary (1.5.35)
+ apache-commons (35524)
+ apache-http (35589)
+ imagery_offset_db (35640)
+ jna (35662)
+ turnrestrictions (35640)

Last errors/warnings:
- 00034.277 E: Failed to locate image 'void--dynamic'
- 00034.279 E: Failed to locate image 'void--ego-vehicle'
- 00034.280 E: Failed to locate image 'void--ground'
- 00034.282 E: Failed to locate image 'void--static'
- 00034.575 E: Failed to locate image 'warning--kangaroo-crossing--g1'
- 00068.924 W: Region [userProfile_BLOCK_v2] : Problem verifying disk.
- 00069.277 E: java.io.IOException: stream is closed
- 00070.134 E: java.io.IOException: stream is closed
- 00076.496 E: Handled by bug report queue: java.util.ConcurrentModificationException
- 00076.821 E: Handled by bug report queue: java.util.ConcurrentModificationException



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (22) of main
java.util.ConcurrentModificationException
	at java.base/java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1013)
	at java.base/java.util.ArrayList$Itr.next(ArrayList.java:967)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.searchContents(QuadBuckets.java:185)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:299)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:314)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:314)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:308)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:305)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:308)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.search(QuadBuckets.java:314)
	at org.openstreetmap.josm.data.osm.QuadBuckets$QBLevel.access$600(QuadBuckets.java:38)
	at org.openstreetmap.josm.data.osm.QuadBuckets.search(QuadBuckets.java:590)
	at org.openstreetmap.josm.plugins.mapillary.MapillaryData.searchNodes(MapillaryData.java:336)
	at org.openstreetmap.josm.plugins.mapillary.MapillaryData.searchWays(MapillaryData.java:347)
	at org.openstreetmap.josm.plugins.mapillary.gui.layer.MapillaryLayer.paint(MapillaryLayer.java:420)
	at org.openstreetmap.josm.gui.layer.AbstractMapViewPaintable$CompatibilityModeLayerPainter.paint(AbstractMapViewPaintable.java:27)
	at org.openstreetmap.josm.gui.MapView.paintLayer(MapView.java:466)
	at org.openstreetmap.josm.gui.MapView.drawMapContent(MapView.java:581)
	at org.openstreetmap.josm.gui.MapView.paint(MapView.java:488)
	at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
	at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
	at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5255)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedFPScales(RepaintManager.java:1707)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1616)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1556)
	at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)
	at java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5203)
	at java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5013)
	at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:865)
	at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:848)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:848)
	at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:823)
	at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:772)
	at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1884)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

=== RUNNING THREADS ===
Thread: Java2D Disposer (16) of system
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.desktop@15.0.1/sun.java2d.Disposer.run(Disposer.java:144)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: styled-map-renderer-7 (66) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:293)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1624)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: TimerQueue (24) of system
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
java.base@15.0.1/java.util.concurrent.DelayQueue.take(DelayQueue.java:217)
java.desktop@15.0.1/javax.swing.TimerQueue.run(TimerQueue.java:171)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: Reference Handler (2) of system
java.base@15.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
java.base@15.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
java.base@15.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)

Thread: Finalizer (3) of system
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.base@15.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)

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

Thread: main-worker-0 (21) of main
java.base@15.0.1/sun.nio.ch.Net.connect0(Native Method)
java.base@15.0.1/sun.nio.ch.Net.connect(Net.java:574)
java.base@15.0.1/sun.nio.ch.Net.connect(Net.java:563)
java.base@15.0.1/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
java.base@15.0.1/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
java.base@15.0.1/java.net.Socket.connect(Socket.java:648)
java.base@15.0.1/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:290)
java.base@15.0.1/sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
java.base@15.0.1/sun.net.NetworkClient.doConnect(NetworkClient.java:182)
java.base@15.0.1/sun.net.www.http.HttpClient.openServer(HttpClient.java:474)
java.base@15.0.1/sun.net.www.http.HttpClient.openServer(HttpClient.java:569)
java.base@15.0.1/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:265)
java.base@15.0.1/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:372)
java.base@15.0.1/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:189)
java.base@15.0.1/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1194)
java.base@15.0.1/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1082)
java.base@15.0.1/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:175)
java.base@15.0.1/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1600)
java.base@15.0.1/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1528)
java.base@15.0.1/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224)
java.base@15.0.1/java.net.URL.openStream(URL.java:1167)
org.openstreetmap.josm.plugins.mapillary.data.image.MapillarySequence.lambda$setUser$2(MapillarySequence.java:193)
org.openstreetmap.josm.plugins.mapillary.data.image.MapillarySequence$$Lambda$1111/0x00000008011eb980.run(Unknown Source)
java.base@15.0.1/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
java.base@15.0.1/java.util.concurrent.FutureTask.run(FutureTask.java:264)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: Notification Thread (12) of system

Thread: FileSystemWatchService (26) of main
java.base@15.0.1/sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus0(Native Method)
java.base@15.0.1/sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus(WindowsNativeDispatcher.java:1055)
java.base@15.0.1/sun.nio.fs.WindowsWatchService$Poller.run(WindowsWatchService.java:587)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: Keep-Alive-Timer (74) of InnocuousThreadGroup
java.base@15.0.1/java.lang.Thread.sleep(Native Method)
java.base@15.0.1/sun.net.www.http.KeepAliveCache.run(KeepAliveCache.java:169)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)
java.base@15.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)

Thread: JCS-ElementEventQueue-Thread-1 (47) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
java.base@15.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: ForkJoinPool.commonPool-worker-3 (31) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: styled-map-renderer-5 (64) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: ForkJoinPool.commonPool-worker-9 (34) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: AWT-Windows (19) of system
java.desktop@15.0.1/sun.awt.windows.WToolkit.eventLoop(Native Method)
java.desktop@15.0.1/sun.awt.windows.WToolkit.run(WToolkit.java:361)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: AWT-Shutdown (23) of system
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.Object.wait(Object.java:321)
java.desktop@15.0.1/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: styled-map-renderer-2 (61) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: styled-map-renderer-6 (65) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: styled-map-renderer-0 (59) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:293)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1624)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: Attach Listener (5) of system

Thread: Weak reference cleaner (28) of main
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
app//org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60)
app//org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda$445/0x0000000800ed2098.run(Unknown Source)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: changeset-updater-0 (50) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661)
java.base@15.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
java.base@15.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: Map Status Collector (58) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
java.base@15.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
app//org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:438)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: mapillary-MapillarySquareDownloadRunnable-0 (70) of main
java.base@15.0.1/java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1012)
java.base@15.0.1/java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
org.openstreetmap.josm.plugins.mapillary.MapillaryData.lambda$regenerateSequences$4(MapillaryData.java:386)
org.openstreetmap.josm.plugins.mapillary.MapillaryData$$Lambda$1163/0x00000008011ef508.accept(Unknown Source)
java.base@15.0.1/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
java.base@15.0.1/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
java.base@15.0.1/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
java.base@15.0.1/java.util.concurrent.ConcurrentHashMap$ValueSpliterator.forEachRemaining(ConcurrentHashMap.java:3612)
java.base@15.0.1/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
java.base@15.0.1/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
java.base@15.0.1/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
java.base@15.0.1/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
java.base@15.0.1/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
java.base@15.0.1/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
org.openstreetmap.josm.plugins.mapillary.MapillaryData.regenerateSequences(MapillaryData.java:386)
org.openstreetmap.josm.plugins.mapillary.MapillaryData.fireImagesAdded(MapillaryData.java:400)
org.openstreetmap.josm.plugins.mapillary.MapillaryData.add(MapillaryData.java:139)
org.openstreetmap.josm.plugins.mapillary.MapillaryData.add(MapillaryData.java:123)
org.openstreetmap.josm.plugins.mapillary.io.download.SequenceDownloadRunnable.run(SequenceDownloadRunnable.java:84)
org.openstreetmap.josm.plugins.mapillary.io.download.BoundsDownloadRunnable.realRun(BoundsDownloadRunnable.java:113)
org.openstreetmap.josm.plugins.mapillary.io.download.BoundsDownloadRunnable.realRun(BoundsDownloadRunnable.java:81)
org.openstreetmap.josm.plugins.mapillary.io.download.BoundsDownloadRunnable.lambda$run$0(BoundsDownloadRunnable.java:71)
org.openstreetmap.josm.plugins.mapillary.io.download.BoundsDownloadRunnable$$Lambda$1096/0x00000008011e9fc8.run(Unknown Source)
java.base@15.0.1/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1429)
java.base@15.0.1/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
java.base@15.0.1/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: Common-Cleaner (13) of InnocuousThreadGroup
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@15.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)
java.base@15.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)

Thread: ForkJoinPool.commonPool-worker-5 (32) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:293)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1624)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: Timer-1 (53) of main
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.util.TimerThread.mainLoop(Timer.java:553)
java.base@15.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: mapillary-MapillaryDownloader-1 (71) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: File Watcher (27) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
java.base@15.0.1/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:485)
java.base@15.0.1/java.util.concurrent.LinkedBlockingDeque.take(LinkedBlockingDeque.java:673)
java.base@15.0.1/sun.nio.fs.AbstractWatchService.take(AbstractWatchService.java:118)
app//org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:120)
app//org.openstreetmap.josm.io.FileWatcher$$Lambda$393/0x0000000800e6e6b8.run(Unknown Source)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: DestroyJavaVM (51) of main

Thread: Timer-2 (56) of main
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.lang.Object.wait(Object.java:321)
java.base@15.0.1/java.util.TimerThread.mainLoop(Timer.java:527)
java.base@15.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: styled-map-renderer-3 (62) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: pool-2-thread-1 (68) of main
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.util.concurrent.ForkJoinTask.externalInterruptibleAwaitDone(ForkJoinTask.java:356)
java.base@15.0.1/java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1004)
org.openstreetmap.josm.plugins.mapillary.io.download.MapillaryDownloader.lambda$run$0(MapillaryDownloader.java:228)
org.openstreetmap.josm.plugins.mapillary.io.download.MapillaryDownloader$$Lambda$1092/0x00000008011e8ed8.run(Unknown Source)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: CacheEventQueue.QProcessor-userProfile_BLOCK_v2Thread-6 (77) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@15.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661)
java.base@15.0.1/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:460)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1055)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
java.base@15.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
java.base@15.0.1/java.lang.Thread.run(Thread.java:832)

Thread: ForkJoinPool.commonPool-worker-13 (36) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: ForkJoinPool.commonPool-worker-11 (35) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: ForkJoinPool.commonPool-worker-15 (37) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: styled-map-renderer-1 (60) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: Timer-0 (48) of main
java.base@15.0.1/java.lang.Object.wait(Native Method)
java.base@15.0.1/java.util.TimerThread.mainLoop(Timer.java:553)
java.base@15.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: mapillary-MapillarySquareDownloadRunnable-1 (72) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: Signal Dispatcher (4) of system

Thread: ForkJoinPool.commonPool-worker-7 (33) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: styled-map-renderer-4 (63) of main
java.base@15.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@15.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Thread: mapillary-MapillaryDownloader-0 (69) of main
java.base@15.0.1/java.lang.Thread.yield(Native Method)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.awaitQuiescence(ForkJoinPool.java:2999)
org.openstreetmap.josm.plugins.mapillary.io.download.MapillarySquareDownloadRunnable.run(MapillarySquareDownloadRunnable.java:74)
java.base@15.0.1/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1409)
java.base@15.0.1/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
java.base@15.0.1/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
java.base@15.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
java.base@15.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Attachments (0)

Change History (2)

comment:1 by taylor.smock, 4 years ago

Yay. And I tested that. :(

comment:2 by taylor.smock, 4 years ago

Resolution: fixed
Status: newclosed

Fixed by synchronizing on the quadbucket. This may lose some performance, but it shouldn't be too bad.

fb4d64de7e0016658ce5ef676789925eb6842e33

Modify Ticket

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