Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8198350

Deadlock on CrossDomainXML check

XMLWordPrintable

    • x86_64
    • windows_10

      FULL PRODUCT VERSION :
      java version "10.0.1" 2018-04-17
      Java(TM) SE Runtime Environment 18.3 (build 10.0.1+4)
      Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+4, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 10.0.16299.248]

      A DESCRIPTION OF THE PROBLEM :
      A call to java.net.InetAddress.getByName() in a separate thread trigger a cross domain check which result in daedlock.

      The blocking threads seems to be:

      Thread: 'Thread-23', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.ui.JavawsSysRun.delegate(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun.execute(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun$1.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun.executePrivileged(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.UIFactory.showApiDialog(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.impl.awt.ui.UIFactoryImpl.showMessageDialogImpl(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.impl.awt.ui.UIFactoryImpl.showMessageDialog(Unknown Source)
      platform/jdk.plugin@10.0.1/sun.plugin2.uitoolkit.ui.DelegatingPluginUIFactory.showMessageDialog(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.ui.UIFactory.showMessageDialog(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askUser(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askUser(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askConnect(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName0(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getByName(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.addAccess(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.allowNoAccess(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.check(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getLocalHost(Unknown Source)
      com.inet.syb.SybDriver.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)


      Thread: 'Attach Listener', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.quickCheck(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName0(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getByName(Unknown Source)
      jdk.management.agent@10.0.1/sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer(Unknown Source)
      jdk.management.agent@10.0.1/jdk.internal.agent.Agent.startLocalManagementAgent(Unknown Source)



      REGRESSION. Last worked in version 9.0.4

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Frequently start a Java Web App which call InetAddress.getLocalHost(). In approx 30% it will hang.


      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      JStack produce the follow message:
      C:\Program Files\Java\jdk-10\bin>jstack 9308
      Exception in thread "main" java.lang.InternalError: Remote thread failed for unknown reason
              at jdk.attach/sun.tools.attach.VirtualMachineImpl.enqueue(Native Method)
              at jdk.attach/sun.tools.attach.VirtualMachineImpl.execute(VirtualMachineImpl.java:96)
              at jdk.attach/sun.tools.attach.HotSpotVirtualMachine.executeCommand(HotSpotVirtualMachine.java:301)
              at jdk.attach/sun.tools.attach.HotSpotVirtualMachine.remoteDataDump(HotSpotVirtualMachine.java:258)
              at jdk.jcmd/sun.tools.jstack.JStack.runThreadDump(JStack.java:119)
              at jdk.jcmd/sun.tools.jstack.JStack.main(JStack.java:98)

      That here is our internal thread dump which is not 100% the standard output:

      Begin of thread dump, time is 16.02.18, 10:32
      Operating System: Windows 10 10.0
      JVM Version : 10.0.1

      Thread: 'Common-Cleaner', State is 'TIMED_WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.base@10.0.1/jdk.internal.ref.CleanerImpl.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)
      java.base@10.0.1/jdk.internal.misc.InnocuousThread.run(Unknown Source)

      Thread: 'Logging Spooler', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      com.inet.logging.LogBuffer.a(SourceFile:54)
      com.inet.logging.LogManager$1.run(SourceFile:62)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'Attach Listener', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.quickCheck(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName0(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getByName(Unknown Source)
      jdk.management.agent@10.0.1/sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer(Unknown Source)
      jdk.management.agent@10.0.1/jdk.internal.agent.Agent.startLocalManagementAgent(Unknown Source)

      Thread: 'AWT-Shutdown', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      java.desktop@10.0.1/sun.awt.AWTAutoShutdown.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'MemoryCache-DelayedCleanup', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      java.base@10.0.1/java.util.TimerThread.mainLoop(Unknown Source)
      java.base@10.0.1/java.util.TimerThread.run(Unknown Source)

      Thread: 'Swing-Shell', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.desktop@10.0.1/sun.awt.shell.Win32ShellFolderManager2$ComInvoker$1.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'initializer', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.quickCheck(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName0(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getByName(Unknown Source)................................................
      .......................................................................................
      ..............................................................................................................
      Thread: 'SwingWorker-pool-3-thread-7', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'AWT-EventQueue-1', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.getNextEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.SequencedEvent.dispatch(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.access$600(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$5.run(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$5.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.WaitDispatchSupport$2.run(Unknown Source)
      java.desktop@10.0.1/java.awt.WaitDispatchSupport$4.run(Unknown Source)
      java.desktop@10.0.1/java.awt.WaitDispatchSupport$4.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.desktop@10.0.1/java.awt.WaitDispatchSupport.enter(Unknown Source)
      java.desktop@10.0.1/java.awt.Dialog.show(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.show(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.setVisible(Unknown Source)
      java.desktop@10.0.1/java.awt.Window.setVisible(Unknown Source)
      java.desktop@10.0.1/java.awt.Dialog.setVisible(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.DialogTemplate$34.run(Unknown Source)
      java.desktop@10.0.1/java.awt.event.InvocationEvent.dispatch(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.access$600(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-4', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'traceMsgQueueThread', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.trace.Trace$TraceMsgQueueChecker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'AWT-EventQueue-2', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireInterruptibly(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.ReentrantLock.lockInterruptibly(Unknown Source)
      ...........................................
      .........................................................................
      .......................................................................................
      java.desktop@10.0.1/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
      java.desktop@10.0.1/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
      java.desktop@10.0.1/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.processMouseEvent(Unknown Source)
      java.desktop@10.0.1/javax.swing.JComponent.processMouseEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.processEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.Container.processEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.Container.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.Container.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.Window.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.Component.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.access$600(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$4.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$5.run(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue$5.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      java.base@10.0.1/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.dispatchEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.run(Unknown Source)

      Thread: 'Signal Dispatcher', State is 'RUNNABLE'

      Thread: 'DestroyJavaVM', State is 'RUNNABLE'

      Thread: 'CacheMemoryCleanUpThread', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.cache.MemoryCache$LoadedResourceCleanup.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'Reference Handler', State is 'RUNNABLE'
      java.base@10.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
      java.base@10.0.1/java.lang.ref.Reference.processPendingReferences(Unknown Source)
      java.base@10.0.1/java.lang.ref.Reference.access$000(Unknown Source)
      java.base@10.0.1/java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)

      Thread: 'Java2D Disposer', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.desktop@10.0.1/sun.java2d.Disposer.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'ConsoleTraceListener', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.ui.ConsoleTraceListener$ConsoleWriter.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'Abandoned connection cleanup thread', State is 'TIMED_WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)

      Thread: 'AWT-Windows', State is 'RUNNABLE'
      java.desktop@10.0.1/sun.awt.windows.WToolkit.eventLoop(Native Method)
      java.desktop@10.0.1/sun.awt.windows.WToolkit.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-5', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-2', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'AWT-EventQueue-0', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.getNextEvent(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      java.desktop@10.0.1/java.awt.EventDispatchThread.run(Unknown Source)

      Thread: 'Javaws Secure Thread', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.invokeAndWait(Unknown Source)
      java.desktop@10.0.1/java.awt.EventQueue.invokeAndWait(Unknown Source)
      java.desktop@10.0.1/javax.swing.SwingUtilities.invokeAndWait(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.DialogTemplate.runSwingRunner(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.DialogTemplate.setVisible(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.UIFactory$13.execute(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.ui.JavawsSysRun$SecureThread.doWork(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.ui.JavawsSysRun$SecureThread.run(Unknown Source)

      Thread: 'Configuration change monitor', State is 'BLOCKED'
      com.inet.config.ConfigKeyParser.validate(SourceFile:248)
      com.inet.config.ConfigurationManagerImpl.b(SourceFile:112)
      com.inet.config.ConfigurationManagerImpl$a.run(SourceFile:175)

      Thread: 'DeadLock Detector', State is 'RUNNABLE'
      java.base@10.0.1/java.lang.Thread.dumpThreads(Native Method)
      java.base@10.0.1/java.lang.Thread.getAllStackTraces(Unknown Source)
      ..............................
      ...................................................
      ............................................................................
      Thread: 'SwingWorker-pool-3-thread-6', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-8', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'Thread-23', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.Object.wait(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.ui.JavawsSysRun.delegate(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun.execute(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun$1.run(Unknown Source)
      java.base@10.0.1/java.security.AccessController.doPrivileged(Native Method)
      platform/jdk.deploy@10.0.1/com.sun.deploy.util.DeploySysRun.executePrivileged(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.ui.UIFactory.showApiDialog(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.impl.awt.ui.UIFactoryImpl.showMessageDialogImpl(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.impl.awt.ui.UIFactoryImpl.showMessageDialog(Unknown Source)
      platform/jdk.plugin@10.0.1/sun.plugin2.uitoolkit.ui.DelegatingPluginUIFactory.showMessageDialog(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.uitoolkit.ui.UIFactory.showMessageDialog(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askUser(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askUser(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.jnlp.ApiDialog.askConnect(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName0(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getAllByName(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getByName(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.addAccess(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.allowNoAccess(Unknown Source)
      platform/jdk.deploy@10.0.1/com.sun.deploy.net.CrossDomainXML.check(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnectHelper(Unknown Source)
      platform/jdk.javaws@10.0.1/com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
      java.base@10.0.1/java.net.InetAddress.getLocalHost(Unknown Source)
      com.inet.syb.SybDriver.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'TimerQueue', State is 'TIMED_WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
      java.base@10.0.1/java.util.concurrent.DelayQueue.take(Unknown Source)
      java.desktop@10.0.1/javax.swing.TimerQueue.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'TimerQueue', State is 'TIMED_WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
      java.base@10.0.1/java.util.concurrent.DelayQueue.take(Unknown Source)
      java.desktop@10.0.1/javax.swing.TimerQueue.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'Designer Listener', State is 'RUNNABLE'
      java.base@10.0.1/java.net.DualStackPlainSocketImpl.accept0(Native Method)
      java.base@10.0.1/java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source)
      java.base@10.0.1/java.net.AbstractPlainSocketImpl.accept(Unknown Source)
      java.base@10.0.1/java.net.PlainSocketImpl.accept(Unknown Source)
      java.base@10.0.1/java.net.ServerSocket.implAccept(Unknown Source)
      java.base@10.0.1/java.net.ServerSocket.accept(Unknown Source)
      com.inet.designer.Startup$6.run(SourceFile:890)

      Thread: 'Finalizer', State is 'WAITING'
      java.base@10.0.1/java.lang.Object.wait(Native Method)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.base@10.0.1/java.lang.ref.ReferenceQueue.remove(Unknown Source)
      java.base@10.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-3', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      Thread: 'SwingWorker-pool-3-thread-1', State is 'WAITING'
      java.base@10.0.1/jdk.internal.misc.Unsafe.park(Native Method)
      java.base@10.0.1/java.util.concurrent.locks.LockSupport.park(Unknown Source)
      java.base@10.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
      java.base@10.0.1/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      java.base@10.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      java.base@10.0.1/java.lang.Thread.run(Unknown Source)

      End of thread dump



      REPRODUCIBILITY :
      This bug can be reproduced often.

        1. dump_jdk10.txt
          31 kB
          Abdul Kolarkunnu
        2. dump_jdk9.txt
          27 kB
          Abdul Kolarkunnu

            herrick Andy Herrick (Inactive)
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: