Modify

Opened 12 months ago

Closed 12 months ago

Last modified 12 months ago

#15654 closed defect (fixed)

JOSM is blocked if it can't download a layer icon

Reported by: naoliv Owned by: team
Priority: major Milestone: 17.12
Component: Core imagery Version:
Keywords: menu icon asynchronous https regression Cc: udit, bastiK, ris, cmuelle8, simon04

Description

While trying to view some objects near here https://www.openstreetmap.org/#map=17/-34.25274/-58.82982 I saw that JOSM became completely blocked by something (as if it's waiting for something)

In console I can see:

2017-12-08 14:40:51.874 INFORMAÇÕES: GET http://mapa.educacion.gob.ar/wp-content/themes/sitio_nuevo/img/men_icon.png -> !!!
2017-12-08 14:40:51.874 ADVERTÊNCIA: java.net.SocketTimeoutException: connect timed out
java.net.SocketTimeoutException: connect timed out
	at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:400)
	at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:243)
	at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:225)
	at java.base/java.net.Socket.connect(Socket.java:591)
	at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:177)
	at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474)
	at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:569)
	at java.base/sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
	at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:341)
	at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:362)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1242)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1181)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1075)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1009)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:133)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:79)
	at org.openstreetmap.josm.io.CachedFile.checkLocal(CachedFile.java:474)
	at org.openstreetmap.josm.io.CachedFile.getFile(CachedFile.java:273)
	at org.openstreetmap.josm.io.CachedFile.getInputStream(CachedFile.java:208)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableHttp(ImageProvider.java:937)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableImpl(ImageProvider.java:841)
	at org.openstreetmap.josm.tools.ImageProvider.getResource(ImageProvider.java:669)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.base/java.lang.Thread.run(Thread.java:844)

2017-12-08 14:40:51.875 ADVERTÊNCIA: Already here java.net.SocketTimeoutException: connect timed out
2017-12-08 14:40:51.975 GRAVE: Falha ao localizar imagem 'http://mapa.educacion.gob.ar/wp-content/themes/sitio_nuevo/img/men_icon.png'

ie, it fails to download http://mapa.educacion.gob.ar/wp-content/themes/sitio_nuevo/img/men_icon.png

I guess that JOSM is automatically trying to download an icon from a layer available in Argentina (a layer that is automatically enabled by the area/country) but, since the site is unreachable, it gets blocked.

jstack:

2017-12-08 14:36:40
Full thread dump OpenJDK 64-Bit Server VM (9.0.1+11-Debian-1 mixed mode):

"Attach Listener" #2944 daemon prio=9 os_prio=0 tid=0x00007f6794004000 nid=0x2fda waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Keep-Alive-SocketCleaner" #2933 daemon prio=8 os_prio=0 tid=0x00007f678800d800 nid=0x2fb3 in Object.wait() [0x00007f674efd1000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at sun.net.www.http.KeepAliveStreamCleaner.run(java.base@9.0.1/KeepAliveStreamCleaner.java:101)
	- waiting to re-lock in wait() <0x0000000609379510> (a sun.net.www.http.KeepAliveStreamCleaner)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)
	at jdk.internal.misc.InnocuousThread.run(java.base@9.0.1/InnocuousThread.java:122)

   Locked ownable synchronizers:
	- None

"styled-map-renderer-39" #2870 daemon prio=5 os_prio=0 tid=0x00007f67e00cf800 nid=0x2f20 waiting on condition [0x00007f674eed0000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x000000060322ca50> (a java.util.concurrent.ForkJoinPool)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.ForkJoinPool.runWorker(java.base@9.0.1/ForkJoinPool.java:1668)
	at java.util.concurrent.ForkJoinWorkerThread.run(java.base@9.0.1/ForkJoinWorkerThread.java:175)

   Locked ownable synchronizers:
	- None

"JCS Downloading: https://a.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44115/78824.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2853 prio=5 os_prio=0 tid=0x00007f67502fb800 nid=0x2eee runnable [0x00007f674f2d4000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x000000061b27f6d8> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000061b2817a8> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x0000000628f36968> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000628f43510> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b281aa0> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://c.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44114/78823.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2852 prio=5 os_prio=0 tid=0x00007f6750757000 nid=0x2eed runnable [0x00007f674f8da000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x0000000626f2a808> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x0000000626f2ad28> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x0000000626e82f40> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000626e876a8> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b100960> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://a.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/19/191222/295491.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2851 prio=5 os_prio=0 tid=0x00007f67502ef000 nid=0x2eec runnable [0x00007f674f4d6000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x000000061b17f078> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000061b181148> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x000000061b181180> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000628ea2680> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b181440> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://a.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44119/78824.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2850 prio=5 os_prio=0 tid=0x00007f67508bc800 nid=0x2eeb runnable [0x00007f674f1d2000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x000000062814da30> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000062814df50> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x00000006281fcd58> (a java.io.BufferedInputStream)
	at sun.net.www.http.HttpClient.parseHTTPHeader(java.base@9.0.1/HttpClient.java:746)
	at sun.net.www.http.HttpClient.parseHTTP(java.base@9.0.1/HttpClient.java:689)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(java.base@9.0.1/HttpURLConnection.java:1604)
	- locked <0x000000062814c580> (a sun.net.www.protocol.https.DelegateHttpsURLConnection)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(java.base@9.0.1/HttpURLConnection.java:1509)
	- locked <0x000000062814c580> (a sun.net.www.protocol.https.DelegateHttpsURLConnection)
	at java.net.HttpURLConnection.getResponseCode(java.base@9.0.1/HttpURLConnection.java:527)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(java.base@9.0.1/HttpsURLConnectionImpl.java:329)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:137)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:79)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:327)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b184500> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://c.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44116/78823.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2849 prio=5 os_prio=0 tid=0x00007f67503b9800 nid=0x2eea runnable [0x00007f674f6d8000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x0000000629139cf8> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000062913a218> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x0000000628ff22e0> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000628c86530> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b186f38> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://d.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44114/78826.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2848 prio=5 os_prio=0 tid=0x00007f6750758000 nid=0x2ee9 runnable [0x00007f674f7d9000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x00000006262a1560> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x00000006262a1a80> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x0000000625f73fb8> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000625f7e480> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b103398> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://b.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/47804/73874.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2847 prio=5 os_prio=0 tid=0x00007f67503be000 nid=0x2ee8 runnable [0x00007f6757dfe000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x000000061b282110> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000061b2841e0> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x000000061b284a10> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x000000061b284a38> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b284b60> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://a.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/18/95611/147747.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2846 prio=5 os_prio=0 tid=0x00007f67503ff000 nid=0x2ee7 runnable [0x00007f675c1aa000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x000000061b1875a8> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x000000061b189678> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x000000061b1896b0> (a java.io.BufferedInputStream)
	at sun.net.www.http.HttpClient.parseHTTPHeader(java.base@9.0.1/HttpClient.java:746)
	at sun.net.www.http.HttpClient.parseHTTP(java.base@9.0.1/HttpClient.java:689)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(java.base@9.0.1/HttpURLConnection.java:1604)
	- locked <0x000000061b1896f0> (a sun.net.www.protocol.https.DelegateHttpsURLConnection)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(java.base@9.0.1/HttpURLConnection.java:1509)
	- locked <0x000000061b1896f0> (a sun.net.www.protocol.https.DelegateHttpsURLConnection)
	at java.net.HttpURLConnection.getResponseCode(java.base@9.0.1/HttpURLConnection.java:527)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(java.base@9.0.1/HttpsURLConnectionImpl.java:329)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:137)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:79)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:327)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b189970> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://b.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44116/78824.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2845 prio=5 os_prio=0 tid=0x00007f67502f5800 nid=0x2ee6 runnable [0x00007f674f5d7000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x0000000629ac1cb0> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x0000000629ac21d0> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x00000006299d86c0> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x00000006299eece8> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b18c3a8> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JCS Downloading: https://c.tiles.mapbox.com/v4/digitalglobe.0a8e44ba/17/44115/78823.png?access_token=pk.eyJ1IjoiZGlnaXRhbGdsb2JlIiwiYSI6ImNqOGRmNW9qZjBudmgzMnA1a294OGRtNm8ifQ.06mo-nDisy4KmqjYxEVwQw" #2844 prio=5 os_prio=0 tid=0x00007f6750848000 nid=0x2ee5 runnable [0x00007f674e8ca000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(java.base@9.0.1/Native Method)
	at java.net.SocketInputStream.socketRead(java.base@9.0.1/SocketInputStream.java:116)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:171)
	at java.net.SocketInputStream.read(java.base@9.0.1/SocketInputStream.java:141)
	at sun.security.ssl.SSLSocketInputRecord.read(java.base@9.0.1/SSLSocketInputRecord.java:425)
	at sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(java.base@9.0.1/SSLSocketInputRecord.java:221)
	at sun.security.ssl.SSLSocketInputRecord.decode(java.base@9.0.1/SSLSocketInputRecord.java:178)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:1031)
	- locked <0x00000006280149f8> (a java.lang.Object)
	at sun.security.ssl.SSLSocketImpl.readRecord(java.base@9.0.1/SSLSocketImpl.java:964)
	at sun.security.ssl.AppInputStream.read(java.base@9.0.1/AppInputStream.java:159)
	- locked <0x0000000628014f18> (a sun.security.ssl.AppInputStream)
	at java.io.BufferedInputStream.fill(java.base@9.0.1/BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read1(java.base@9.0.1/BufferedInputStream.java:286)
	at java.io.BufferedInputStream.read(java.base@9.0.1/BufferedInputStream.java:345)
	- locked <0x0000000627f95450> (a java.io.BufferedInputStream)
	at sun.net.www.MeteredStream.read(java.base@9.0.1/MeteredStream.java:134)
	- locked <0x0000000627fa9978> (a sun.net.www.http.KeepAliveStream)
	at java.io.FilterInputStream.read(java.base@9.0.1/FilterInputStream.java:133)
	at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(java.base@9.0.1/HttpURLConnection.java:3444)
	at org.openstreetmap.josm.io.ProgressInputStream.read(ProgressInputStream.java:79)
	at java.io.InputStream.read(java.base@9.0.1/InputStream.java:106)
	at org.openstreetmap.josm.tools.Utils.readBytesFromStream(Utils.java:1363)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:358)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000061b287598> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"ForkJoinPool.commonPool-worker-0" #2842 daemon prio=6 os_prio=0 tid=0x00007f6750796800 nid=0x2ed7 waiting on condition [0x00007f6749201000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000600fb9590> (a java.util.concurrent.ForkJoinPool)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.ForkJoinPool.runWorker(java.base@9.0.1/ForkJoinPool.java:1668)
	at java.util.concurrent.ForkJoinWorkerThread.run(java.base@9.0.1/ForkJoinWorkerThread.java:175)

   Locked ownable synchronizers:
	- None

"styled-map-renderer-33" #2614 daemon prio=5 os_prio=0 tid=0x00007f67e00c7800 nid=0x25a2 waiting on condition [0x00007f6749100000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x000000060322ca50> (a java.util.concurrent.ForkJoinPool)
	at java.util.concurrent.locks.LockSupport.parkUntil(java.base@9.0.1/LockSupport.java:275)
	at java.util.concurrent.ForkJoinPool.runWorker(java.base@9.0.1/ForkJoinPool.java:1656)
	at java.util.concurrent.ForkJoinWorkerThread.run(java.base@9.0.1/ForkJoinWorkerThread.java:175)

   Locked ownable synchronizers:
	- None

"pool-3-thread-8" #377 prio=5 os_prio=0 tid=0x00007f6750367000 nid=0x134d waiting on condition [0x00007f674d463000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-7" #376 prio=5 os_prio=0 tid=0x00007f67505ea800 nid=0x134c waiting on condition [0x00007f674d564000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-6" #375 prio=5 os_prio=0 tid=0x00007f6750679000 nid=0x134b waiting on condition [0x00007f674d966000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-5" #374 prio=5 os_prio=0 tid=0x00007f675058d000 nid=0x134a waiting on condition [0x00007f674ecce000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-4" #373 prio=5 os_prio=0 tid=0x00007f675004f000 nid=0x1349 waiting on condition [0x00007f674e7c9000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-3" #372 prio=5 os_prio=0 tid=0x00007f6750396800 nid=0x1348 waiting on condition [0x00007f674dc67000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-2" #371 prio=5 os_prio=0 tid=0x00007f6750164000 nid=0x1347 waiting on condition [0x00007f67541f6000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"pool-3-thread-1" #370 prio=5 os_prio=0 tid=0x00007f67506b4000 nid=0x1346 waiting on condition [0x00007f674d865000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000609878188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Timer-2" #179 daemon prio=6 os_prio=0 tid=0x00007f6750047800 nid=0x1221 in Object.wait() [0x00007f674edcf000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(java.base@9.0.1/Object.java:516)
	at java.util.TimerThread.mainLoop(java.base@9.0.1/Timer.java:527)
	- waiting to re-lock in wait() <0x00000006098783c0> (a java.util.TaskQueue)
	at java.util.TimerThread.run(java.base@9.0.1/Timer.java:506)

   Locked ownable synchronizers:
	- None

"main-worker-0" #125 prio=5 os_prio=0 tid=0x00007f675010b800 nid=0x11e4 waiting on condition [0x00007f674e9cb000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x00000006001da658> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Map Status Collector" #54 daemon prio=6 os_prio=0 tid=0x00007f6750499000 nid=0x1198 waiting on condition [0x00007f675dfbc000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x000000060965dc58> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:433)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Timer-1" #52 prio=6 os_prio=0 tid=0x00007f6750298800 nid=0x1196 in Object.wait() [0x00007f67549f8000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <0x00000006078c9978> (a java.util.TaskQueue)
	at java.lang.Object.wait(java.base@9.0.1/Object.java:516)
	at java.util.TimerThread.mainLoop(java.base@9.0.1/Timer.java:527)
	- waiting to re-lock in wait() <0x00000006078c9978> (a java.util.TaskQueue)
	at java.util.TimerThread.run(java.base@9.0.1/Timer.java:506)

   Locked ownable synchronizers:
	- None

"DestroyJavaVM" #51 prio=5 os_prio=0 tid=0x00007f6804011800 nid=0x1147 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"message-notifier-0" #50 prio=5 os_prio=0 tid=0x00007f6805326000 nid=0x118c waiting on condition [0x00007f67544f7000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x00000006008853f0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(java.base@9.0.1/LockSupport.java:234)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(java.base@9.0.1/AbstractQueuedSynchronizer.java:2104)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(java.base@9.0.1/ScheduledThreadPoolExecutor.java:1131)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(java.base@9.0.1/ScheduledThreadPoolExecutor.java:848)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Timer-0" #47 daemon prio=6 os_prio=0 tid=0x00007f675014d800 nid=0x1188 in Object.wait() [0x00007f6754cf9000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.util.TimerThread.mainLoop(java.base@9.0.1/Timer.java:553)
	- waiting to re-lock in wait() <0x00000006078c9990> (a java.util.TaskQueue)
	at java.util.TimerThread.run(java.base@9.0.1/Timer.java:506)

   Locked ownable synchronizers:
	- None

"RemoteControl HTTPS Server" #46 daemon prio=5 os_prio=0 tid=0x00007f68052ad000 nid=0x1187 runnable [0x00007f6754ffa000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(java.base@9.0.1/Native Method)
	at java.net.AbstractPlainSocketImpl.accept(java.base@9.0.1/AbstractPlainSocketImpl.java:459)
	at java.net.ServerSocket.implAccept(java.base@9.0.1/ServerSocket.java:551)
	at sun.security.ssl.SSLServerSocketImpl.accept(java.base@9.0.1/SSLServerSocketImpl.java:352)
	at org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpsServer.run(RemoteControlHttpsServer.java:404)

   Locked ownable synchronizers:
	- None

"RemoteControl HTTPS Server" #45 daemon prio=5 os_prio=0 tid=0x00007f68052ac000 nid=0x1186 runnable [0x00007f67565fc000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(java.base@9.0.1/Native Method)
	at java.net.AbstractPlainSocketImpl.accept(java.base@9.0.1/AbstractPlainSocketImpl.java:459)
	at java.net.ServerSocket.implAccept(java.base@9.0.1/ServerSocket.java:551)
	at sun.security.ssl.SSLServerSocketImpl.accept(java.base@9.0.1/SSLServerSocketImpl.java:352)
	at org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpsServer.run(RemoteControlHttpsServer.java:404)

   Locked ownable synchronizers:
	- None

"RemoteControl HTTP Server" #44 daemon prio=5 os_prio=0 tid=0x00007f68052fb800 nid=0x1185 runnable [0x00007f675d3b8000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(java.base@9.0.1/Native Method)
	at java.net.AbstractPlainSocketImpl.accept(java.base@9.0.1/AbstractPlainSocketImpl.java:459)
	at java.net.ServerSocket.implAccept(java.base@9.0.1/ServerSocket.java:551)
	at java.net.ServerSocket.accept(java.base@9.0.1/ServerSocket.java:519)
	at org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

   Locked ownable synchronizers:
	- None

"RemoteControl HTTP Server" #43 daemon prio=5 os_prio=0 tid=0x00007f68052f8800 nid=0x1184 runnable [0x00007f67564fb000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(java.base@9.0.1/Native Method)
	at java.net.AbstractPlainSocketImpl.accept(java.base@9.0.1/AbstractPlainSocketImpl.java:459)
	at java.net.ServerSocket.implAccept(java.base@9.0.1/ServerSocket.java:551)
	at java.net.ServerSocket.accept(java.base@9.0.1/ServerSocket.java:519)
	at org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

   Locked ownable synchronizers:
	- None

"WeakCollectionCleaner" #38 daemon prio=8 os_prio=0 tid=0x00007f6804dcb800 nid=0x1180 in Object.wait() [0x00007f67566fd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <0x0000000604e92b18> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:151)
	- waiting to re-lock in wait() <0x0000000604e92b18> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:172)
	at org.geotools.util.WeakCollectionCleaner.run(WeakCollectionCleaner.java:77)

   Locked ownable synchronizers:
	- None

"GT authority factory disposer" #35 daemon prio=5 os_prio=0 tid=0x00007f6804cc5800 nid=0x117d in Object.wait() [0x00007f675debb000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.util.TimerThread.mainLoop(java.base@9.0.1/Timer.java:553)
	- waiting to re-lock in wait() <0x0000000604e92d88> (a java.util.TaskQueue)
	at java.util.TimerThread.run(java.base@9.0.1/Timer.java:506)

   Locked ownable synchronizers:
	- None

"JCS-ElementEventQueue-Thread-1" #34 daemon prio=5 os_prio=0 tid=0x00007f6778197800 nid=0x117c waiting on condition [0x00007f675dcb9000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000600c863f0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingQueue.take(java.base@9.0.1/LinkedBlockingQueue.java:435)
	at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@9.0.1/ThreadPoolExecutor.java:1092)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1152)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"image-fetcher-0" #32 prio=5 os_prio=0 tid=0x00007f676c092000 nid=0x117b runnable [0x00007f675d0b6000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketConnect(java.base@9.0.1/Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(java.base@9.0.1/AbstractPlainSocketImpl.java:400)
	- locked <0x0000000625e31fe0> (a java.net.PlainSocketImpl)
	at java.net.AbstractPlainSocketImpl.connectToAddress(java.base@9.0.1/AbstractPlainSocketImpl.java:243)
	at java.net.AbstractPlainSocketImpl.connect(java.base@9.0.1/AbstractPlainSocketImpl.java:225)
	at java.net.Socket.connect(java.base@9.0.1/Socket.java:591)
	at sun.net.NetworkClient.doConnect(java.base@9.0.1/NetworkClient.java:177)
	at sun.net.www.http.HttpClient.openServer(java.base@9.0.1/HttpClient.java:474)
	at sun.net.www.http.HttpClient.openServer(java.base@9.0.1/HttpClient.java:569)
	- locked <0x0000000625e31f58> (a sun.net.www.http.HttpClient)
	at sun.net.www.http.HttpClient.<init>(java.base@9.0.1/HttpClient.java:242)
	at sun.net.www.http.HttpClient.New(java.base@9.0.1/HttpClient.java:341)
	at sun.net.www.http.HttpClient.New(java.base@9.0.1/HttpClient.java:362)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(java.base@9.0.1/HttpURLConnection.java:1242)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(java.base@9.0.1/HttpURLConnection.java:1181)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(java.base@9.0.1/HttpURLConnection.java:1075)
	at sun.net.www.protocol.http.HttpURLConnection.connect(java.base@9.0.1/HttpURLConnection.java:1009)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:133)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:79)
	at org.openstreetmap.josm.io.CachedFile.checkLocal(CachedFile.java:474)
	at org.openstreetmap.josm.io.CachedFile.getFile(CachedFile.java:273)
	- locked <0x0000000625e2f2c0> (a org.openstreetmap.josm.io.CachedFile)
	at org.openstreetmap.josm.io.CachedFile.getInputStream(CachedFile.java:208)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableHttp(ImageProvider.java:937)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableImpl(ImageProvider.java:841)
	- locked <0x0000000600886598> (a java.util.HashMap)
	at org.openstreetmap.josm.tools.ImageProvider.getResource(ImageProvider.java:669)
	at org.openstreetmap.josm.tools.ImageProvider$$Lambda$401/513692671.get(Unknown Source)
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(java.base@9.0.1/CompletableFuture.java:1700)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9.0.1/ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9.0.1/ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x0000000600d03510> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"Weak reference cleaner" #24 prio=5 os_prio=0 tid=0x00007f6804ab3800 nid=0x1172 in Object.wait() [0x00007f675e2bd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <0x00000006008dec10> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:151)
	- waiting to re-lock in wait() <0x00000006008dec10> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:172)
	at org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60)
	at org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda$258/537265886.run(Unknown Source)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"File Watcher" #13 prio=5 os_prio=0 tid=0x00007f6804971000 nid=0x1171 waiting on condition [0x00007f675e5be000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000601384c40> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.LinkedBlockingDeque.takeFirst(java.base@9.0.1/LinkedBlockingDeque.java:483)
	at java.util.concurrent.LinkedBlockingDeque.take(java.base@9.0.1/LinkedBlockingDeque.java:671)
	at sun.nio.fs.AbstractWatchService.take(java.base@9.0.1/AbstractWatchService.java:118)
	at org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:107)
	at org.openstreetmap.josm.io.FileWatcher$$Lambda$37/369241501.run(Unknown Source)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"TimerQueue" #23 daemon prio=5 os_prio=0 tid=0x00007f67500a4000 nid=0x1170 waiting on condition [0x00007f67ac23b000]
   java.lang.Thread.State: WAITING (parking)
	at jdk.internal.misc.Unsafe.park(java.base@9.0.1/Native Method)
	- parking to wait for  <0x0000000600374958> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(java.base@9.0.1/LockSupport.java:194)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@9.0.1/AbstractQueuedSynchronizer.java:2062)
	at java.util.concurrent.DelayQueue.take(java.base@9.0.1/DelayQueue.java:217)
	at javax.swing.TimerQueue.run(java.desktop@9.0.1/TimerQueue.java:171)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- <0x000000060072e740> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)

"AWT-EventQueue-0" #20 prio=6 os_prio=0 tid=0x00007f6804904000 nid=0x116d waiting for monitor entry [0x00007f675eebb000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableImpl(ImageProvider.java:817)
	- waiting to lock <0x0000000600886598> (a java.util.HashMap)
	at org.openstreetmap.josm.tools.ImageProvider.getResource(ImageProvider.java:669)
	at org.openstreetmap.josm.actions.JosmAction.<init>(JosmAction.java:83)
	at org.openstreetmap.josm.actions.JosmAction.<init>(JosmAction.java:120)
	at org.openstreetmap.josm.actions.AddImageryLayerAction.<init>(AddImageryLayerAction.java:68)
	at org.openstreetmap.josm.gui.ImageryMenu.refreshImageryMenu(ImageryMenu.java:156)
	at org.openstreetmap.josm.gui.ImageryMenu$1.menuSelected(ImageryMenu.java:118)
	at javax.swing.JMenu.fireMenuSelected(java.desktop@9.0.1/JMenu.java:1036)
	at javax.swing.JMenu$MenuChangeListener.stateChanged(java.desktop@9.0.1/JMenu.java:1116)
	at javax.swing.DefaultButtonModel.fireStateChanged(java.desktop@9.0.1/DefaultButtonModel.java:352)
	at javax.swing.DefaultButtonModel.setSelected(java.desktop@9.0.1/DefaultButtonModel.java:234)
	at javax.swing.JMenu.setSelected(java.desktop@9.0.1/JMenu.java:291)
	at javax.swing.JMenu.menuSelectionChanged(java.desktop@9.0.1/JMenu.java:1187)
	at javax.swing.MenuSelectionManager.setSelectedPath(java.desktop@9.0.1/MenuSelectionManager.java:127)
	at javax.swing.plaf.basic.BasicMenuUI$Handler.mousePressed(java.desktop@9.0.1/BasicMenuUI.java:503)
	at java.awt.Component.processMouseEvent(java.desktop@9.0.1/Component.java:6575)
	at javax.swing.JComponent.processMouseEvent(java.desktop@9.0.1/JComponent.java:3343)
	at java.awt.Component.processEvent(java.desktop@9.0.1/Component.java:6343)
	at java.awt.Container.processEvent(java.desktop@9.0.1/Container.java:2259)
	at java.awt.Component.dispatchEventImpl(java.desktop@9.0.1/Component.java:4961)
	at java.awt.Container.dispatchEventImpl(java.desktop@9.0.1/Container.java:2317)
	at java.awt.Component.dispatchEvent(java.desktop@9.0.1/Component.java:4793)
	at java.awt.LightweightDispatcher.retargetMouseEvent(java.desktop@9.0.1/Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(java.desktop@9.0.1/Container.java:4536)
	at java.awt.LightweightDispatcher.dispatchEvent(java.desktop@9.0.1/Container.java:4480)
	at java.awt.Container.dispatchEventImpl(java.desktop@9.0.1/Container.java:2303)
	at java.awt.Window.dispatchEventImpl(java.desktop@9.0.1/Window.java:2758)
	at java.awt.Component.dispatchEvent(java.desktop@9.0.1/Component.java:4793)
	at java.awt.EventQueue.dispatchEventImpl(java.desktop@9.0.1/EventQueue.java:766)
	at java.awt.EventQueue.access$500(java.desktop@9.0.1/EventQueue.java:97)
	at java.awt.EventQueue$3.run(java.desktop@9.0.1/EventQueue.java:717)
	at java.awt.EventQueue$3.run(java.desktop@9.0.1/EventQueue.java:711)
	at java.security.AccessController.doPrivileged(java.base@9.0.1/Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9.0.1/ProtectionDomain.java:89)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9.0.1/ProtectionDomain.java:99)
	at java.awt.EventQueue$4.run(java.desktop@9.0.1/EventQueue.java:739)
	at java.awt.EventQueue$4.run(java.desktop@9.0.1/EventQueue.java:737)
	at java.security.AccessController.doPrivileged(java.base@9.0.1/Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9.0.1/ProtectionDomain.java:89)
	at java.awt.EventQueue.dispatchEvent(java.desktop@9.0.1/EventQueue.java:736)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(java.desktop@9.0.1/EventDispatchThread.java:199)
	at java.awt.EventDispatchThread.pumpEventsForFilter(java.desktop@9.0.1/EventDispatchThread.java:124)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(java.desktop@9.0.1/EventDispatchThread.java:113)
	at java.awt.EventDispatchThread.pumpEvents(java.desktop@9.0.1/EventDispatchThread.java:109)
	at java.awt.EventDispatchThread.pumpEvents(java.desktop@9.0.1/EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.run(java.desktop@9.0.1/EventDispatchThread.java:90)

   Locked ownable synchronizers:
	- None

"AWT-Shutdown" #21 prio=5 os_prio=0 tid=0x00007f6804902800 nid=0x116c in Object.wait() [0x00007f675efc0000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(java.base@9.0.1/Object.java:516)
	at sun.awt.AWTAutoShutdown.run(java.desktop@9.0.1/AWTAutoShutdown.java:291)
	- waiting to re-lock in wait() <0x0000000600368480> (a java.lang.Object)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"AWT-XAWT" #19 daemon prio=6 os_prio=0 tid=0x00007f6804846000 nid=0x116b runnable [0x00007f6772f46000]
   java.lang.Thread.State: RUNNABLE
	at sun.awt.X11.XToolkit.waitForEvents(java.desktop@9.0.1/Native Method)
	at sun.awt.X11.XToolkit.run(java.desktop@9.0.1/XToolkit.java:588)
	at sun.awt.X11.XToolkit.run(java.desktop@9.0.1/XToolkit.java:552)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Java2D Disposer" #16 daemon prio=10 os_prio=0 tid=0x00007f6804760800 nid=0x1167 in Object.wait() [0x00007f67ac13a000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:151)
	- waiting to re-lock in wait() <0x0000000601356aa8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:172)
	at sun.java2d.Disposer.run(java.desktop@9.0.1/Disposer.java:144)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"FileSystemWatchService" #12 daemon prio=5 os_prio=0 tid=0x00007f680465e800 nid=0x1160 runnable [0x00007f67ae22d000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.fs.LinuxWatchService.poll(java.base@9.0.1/Native Method)
	at sun.nio.fs.LinuxWatchService.access$600(java.base@9.0.1/LinuxWatchService.java:47)
	at sun.nio.fs.LinuxWatchService$Poller.run(java.base@9.0.1/LinuxWatchService.java:316)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)

   Locked ownable synchronizers:
	- None

"Service Thread" #10 daemon prio=9 os_prio=0 tid=0x00007f6804456000 nid=0x115e runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Common-Cleaner" #9 daemon prio=8 os_prio=0 tid=0x00007f68043d4800 nid=0x115d in Object.wait() [0x00007f67ae930000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:151)
	- waiting to re-lock in wait() <0x0000000601c942b0> (a java.lang.ref.ReferenceQueue$Lock)
	at jdk.internal.ref.CleanerImpl.run(java.base@9.0.1/CleanerImpl.java:148)
	at java.lang.Thread.run(java.base@9.0.1/Thread.java:844)
	at jdk.internal.misc.InnocuousThread.run(java.base@9.0.1/InnocuousThread.java:122)

   Locked ownable synchronizers:
	- None

"Sweeper thread" #8 daemon prio=9 os_prio=0 tid=0x00007f6804350000 nid=0x115c runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C1 CompilerThread2" #7 daemon prio=9 os_prio=0 tid=0x00007f680434e000 nid=0x115b waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   No compile task

   Locked ownable synchronizers:
	- None

"C2 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007f680434c000 nid=0x115a waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   No compile task

   Locked ownable synchronizers:
	- None

"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007f680434a000 nid=0x1159 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   No compile task

   Locked ownable synchronizers:
	- None

"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007f6804348000 nid=0x1158 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007f6804331800 nid=0x1157 in Object.wait() [0x00007f67af4fb000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(java.base@9.0.1/Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:151)
	- waiting to re-lock in wait() <0x0000000601c957c8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(java.base@9.0.1/ReferenceQueue.java:172)
	at java.lang.ref.Finalizer$FinalizerThread.run(java.base@9.0.1/Finalizer.java:216)

   Locked ownable synchronizers:
	- None

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007f680431d000 nid=0x1156 waiting on condition [0x00007f67af5fc000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.ref.Reference.waitForReferencePendingList(java.base@9.0.1/Native Method)
	at java.lang.ref.Reference.processPendingReferences(java.base@9.0.1/Reference.java:174)
	at java.lang.ref.Reference.access$000(java.base@9.0.1/Reference.java:44)
	at java.lang.ref.Reference$ReferenceHandler.run(java.base@9.0.1/Reference.java:138)

   Locked ownable synchronizers:
	- None

"VM Thread" os_prio=0 tid=0x00007f6804313800 nid=0x1155 runnable 

"GC Thread#0" os_prio=0 tid=0x00007f6804027000 nid=0x1148 runnable 

"GC Thread#1" os_prio=0 tid=0x00007f6804028000 nid=0x1149 runnable 

"GC Thread#2" os_prio=0 tid=0x00007f680402a000 nid=0x114a runnable 

"GC Thread#3" os_prio=0 tid=0x00007f680402b800 nid=0x114b runnable 

"G1 Main Marker" os_prio=0 tid=0x00007f68040af000 nid=0x1153 runnable 

"G1 Marker#0" os_prio=0 tid=0x00007f68040b1000 nid=0x1154 runnable 

"G1 Refine#0" os_prio=0 tid=0x00007f6804033000 nid=0x1151 runnable 

"G1 Refine#1" os_prio=0 tid=0x00007f6804031000 nid=0x1150 runnable 

"G1 Refine#2" os_prio=0 tid=0x00007f680402f800 nid=0x114f runnable 

"G1 Refine#3" os_prio=0 tid=0x00007f680402d800 nid=0x114c runnable 

"G1 Young RemSet Sampling" os_prio=0 tid=0x00007f6804034800 nid=0x1152 runnable 

"VM Periodic Task Thread" os_prio=0 tid=0x00007f6804459000 nid=0x115f waiting on condition 

JNI global references: 16949

Could this part be implemented in an asynchrously/non-blocking way?

I am reporting it against "Core" since it makes JOSM completely unusable while waiting for this.

JOSM:

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2017-12-07 21:46:34 +0100 (Thu, 07 Dec 2017)
Revision:13198
Build-Date:2017-12-08 02:35:00
URL:http://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (13198 pt_BR) Linux Debian GNU/Linux testing (buster)
Memory Usage: 930 MB / 7168 MB (551 MB allocated, but free)
Java version: 9.0.1+11-Debian-1, Oracle Corporation, OpenJDK 64-Bit Server VM
Screen: :0.0 1600x900, :0.1 1280x1024
Maximum Screen Size: 1600x1024
Java package: openjdk-9-jre:amd64-9.0.1+11-1
Java ATK Wrapper package: libatk-wrapper-java:all-0.33.3-13
VM arguments: [--add-modules=java.activation,java.se.ee, -Dawt.useSystemAAFontSettings=on]
Dataset consistency test: No problems found

Plugins:
+ Create_grid_of_ways (33856)
+ DxfImport (1012)
+ FastDraw (33731)
+ ImportImagePlugin (33563)
+ OpeningHoursEditor (33876)
+ PicLayer (33822)
+ RoadSigns (33798)
+ SimplifyArea (33918)
+ apache-commons (33668)
+ buildings_tools (33735)
+ conflation (0.5.6)
+ contourmerge (1032)
+ download_along (33710)
+ editgpx (33782)
+ ejml (32680)
+ geojson (73)
+ geotools (33930)
+ importvec (33902)
+ indoorhelper (33887)
+ jts (32699)
+ log4j (32699)
+ measurement (33760)
+ merge-overlap (33848)
+ opendata (33791)
+ pbf (33568)
+ pdfimport (33579)
+ poly (33570)
+ reverter (33865)
+ scripting (30775)
+ tageditor (33806)
+ todo (30303)
+ turnlanes (33858)
+ turnlanes-tagging (260)
+ turnrestrictions (33780)
+ undelete (33835)
+ utilsplugin2 (33742)

Attachments (0)

Change History (10)

comment:1 Changed 12 months ago by Don-vip

Cc: udit bastiK ris cmuelle8 added
Component: CoreCore imagery
Keywords: menu icon asynchronous added

Indeed we should make this operation asynchronous:

"AWT-EventQueue-0" #20 prio=6 os_prio=0 tid=0x00007f6804904000 nid=0x116d waiting for monitor entry [0x00007f675eebb000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.openstreetmap.josm.tools.ImageProvider.getIfAvailableImpl(ImageProvider.java:817)
	- waiting to lock <0x0000000600886598> (a java.util.HashMap)
	at org.openstreetmap.josm.tools.ImageProvider.getResource(ImageProvider.java:669)
	at org.openstreetmap.josm.actions.JosmAction.<init>(JosmAction.java:83)
	at org.openstreetmap.josm.actions.JosmAction.<init>(JosmAction.java:120)
	at org.openstreetmap.josm.actions.AddImageryLayerAction.<init>(AddImageryLayerAction.java:68)
	at org.openstreetmap.josm.gui.ImageryMenu.refreshImageryMenu(ImageryMenu.java:156)
	at org.openstreetmap.josm.gui.ImageryMenu$1.menuSelected(ImageryMenu.java:118)

Any volunteer? :)

comment:2 Changed 12 months ago by Don-vip

I can reproduce easily in Norway:

  1. Delete everything in cache\images
  2. Start JOSM
  3. Download a small area in Norway
  4. Click on imagery menu. It takes several seconds to display, waiting for:
    2017-12-27 23:40:42.977 INFO: GET https://www.kartverket.no/Content/Images/logo-graphic-512.png -> 200 (8.65 kB)
    2017-12-27 23:40:43.367 INFO: GET http://www.miljodirektoratet.no/Framework/favicon-32.png -> 200 (1.15 kB)
    2017-12-27 23:40:44.712 INFO: GET http://mtbmap.no/logo_640px.png -> 200 (49.3 kB)
    2017-12-27 23:40:47.058 INFO: GET http://kelkkareitit.fi/img/favicon.png -> 200 (2.10 kB)
    2017-12-27 23:40:47.665 INFO: GET https://register.geonorge.no/data/organizations/870917732_od_liten.png -> 200 (3.39 kB)
    2017-12-27 23:40:48.389 INFO: GET https://www.nve.no/Content/Images/nve-logo.png -> 200 (5.81 kB)
    

comment:3 Changed 12 months ago by Don-vip

Milestone: 17.12

comment:4 Changed 12 months ago by Don-vip

Mmmm this should already be asynchronous:

    /**
     * Constructs a new {@code AddImageryLayerAction} for the given {@code ImageryInfo}.
     * If an http:// icon is specified, it is fetched asynchronously.
     * @param info The imagery info
     */
    public AddImageryLayerAction(ImageryInfo info) {
        super(info.getMenuName(), /* ICON */"imagery_menu", tr("Add imagery layer {0}", info.getName()), null,
                true, ToolbarPreferences.IMAGERY_PREFIX + info.getToolbarName(), false);
        putValue("help", ht("/Preferences/Imagery"));
        setTooltip(info.getToolTipText().replaceAll("</?html>", ""));
        this.info = info;
        installAdapters();

        // change toolbar icon from if specified
        String icon = info.getIcon();
        if (icon != null) {
            new ImageProvider(icon).setOptional(true).getResourceAsync().thenAccept(result -> {
                if (result != null) {
                    GuiHelper.runInEDT(() -> result.attachImageIcon(this));
                }
            });
        }
    }

comment:5 Changed 12 months ago by Don-vip

Keywords: https added

OK r10731 does not handle https!

comment:6 Changed 12 months ago by Don-vip

Yet it does not work. It seems r10714 made the whole async stuff become synchronous.

comment:7 Changed 12 months ago by Don-vip

Cc: simon04 added
Keywords: regression added

comment:8 Changed 12 months ago by Don-vip

Resolution: fixed
Status: newclosed

In 13250/josm:

fix #15654 - repair asynchronous fetching of icons (regression from r10714) + fetch https icons asynchronously (omission from r10731)

comment:9 Changed 12 months ago by Don-vip

In 13252/josm:

see #15654 - fix icon flickering (regression from r13250)

comment:10 Changed 12 months ago by bastiK

Thanks, I think I did notice this at some time as well!

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.

Add Comment


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

 
Note: See TracTickets for help on using tickets.