13 Replies Latest reply on Aug 23, 2019 7:09 AM by nklean01_mlsi

    SQL Developer Freezes Frequently

    nklean01_mlsi

      Me and my team are having frequent SQL Developer program freezes and we do not know what is the reason and how to troubleshoot it. For example, when I connect to the database and do a right click on it, the program freezes for some minutes and then is responsive again. The same thing happens after a few minutes, when clicking at some other point in the program. This happens frequently and therefore making it not practical for us to use it.

       

      Are there are any logs that I can search for? Maybe I can share the logs to help for investigation of the issue. This happens on other later versions of the program as well but does not happen on earlier versions that have used an older interface, like for example version 3.

       

      Current Version information

      - SQL Developer 19.2

      - Java 1.8

       

      Thank you in advance for your help.

        • 1. Re: SQL Developer Freezes Frequently
          Matthias_H

          Strange, I have never experienced this before with any version of SQL Developer.

          Could be a memory issue. How much memory (RAM) do you have in your computer?

           

          Matthias

          • 2. Re: SQL Developer Freezes Frequently
            thatJeffSmith-Oracle

            if the UI becomes unresponsive, you can use the 'jstack' program in your jdk/bin directory to attach to the process and spit out a stack dump

             

            then post that here, so we can see what's going on - just be sure to grab the ENTIRE stack dump, it can be quite verbose

             

            the syntax is

             

            jstack -l ####

            where #### is the process ID for the sqldeveloper program running on your machine

            • 3. Re: SQL Developer Freezes Frequently
              Glen Conway

              Possibly you are posting about an entirely new problem but, just in case it is specific to 19.2, be aware of a Code Insight issue that has caused problems related to caching names of the major object types upon opening a database connection.  Here are a couple of discussions offering some workarounds:

              All connections (except as sys) fail to connect to local DB

              Oracle SQL Developer 19.2 hangs upon connecting to 11g-ex

               

              If my understanding of the problem is correct, these suggest either...

              1) Disabling "Enable Completion Auto-Popup in SQL Worksheet" under Tools => Preferences => Code Editor => Completion Insight,

                  or

              2) Reverting to an earlier Code Insight algorithm that does not rely on preloading names (add AddVMOption -Dsqldev.insight.mode=UNION to sqldeveloper.conf)

               

              Edit:  And another similar discussion from today adds another vote for option 2 19.2 hangs while populating object tree in the connection pane.

              • 4. Re: SQL Developer Freezes Frequently
                nklean01_mlsi

                Hi Matthias! Thank you for your support. There is plenty of RAM installed, so this shouldn't be the issue.

                • 5. Re: SQL Developer Freezes Frequently
                  nklean01_mlsi

                  Hi Jeff! Thank you for your answer. I have saved the output to a log file. You can download it from here.

                  • 6. Re: SQL Developer Freezes Frequently
                    nklean01_mlsi

                    Thanks Glen. Following your suggestion I tried disabling this feature, but the problem persists.

                    • 7. Re: SQL Developer Freezes Frequently
                      thatJeffSmith-Oracle

                      Please just copy the log directly here in the thread

                      • 8. Re: SQL Developer Freezes Frequently
                        nklean01_mlsi

                        2019-08-20 09:42:04

                        Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.202-b08 mixed mode):

                         

                        "Timer-4" #149 prio=6 os_prio=0 tid=0x0000000029161800 nid=0x1f04 in Object.wait() [0x000000003fa0e000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.util.TimerThread.mainLoop(Timer.java:526)

                            - locked <0x00000000da5b8d38> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "pool-6-thread-1" #148 prio=5 os_prio=0 tid=0x0000000029161000 nid=0xba0 waiting on condition [0x000000003f90f000]

                           java.lang.Thread.State: TIMED_WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x00000000da410690> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)

                            at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)

                            at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)

                            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)

                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)

                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Inactive RequestProcessor thread [Was:TimedSoftReference/org.openide.util.TimedSoftReference]" #146 daemon prio=1 os_prio=-2 tid=0x000000002915b000 nid=0x988 in Object.wait() [0x000000003f70f000]

                           java.lang.Thread.State: TIMED_WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2002)

                            - locked <0x00000000d7d01b70> (a java.lang.Object)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "status-0" #144 prio=2 os_prio=-2 tid=0x000000002915c800 nid=0x3094 waiting on condition [0x000000003f50f000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x00000000d740cc00> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)

                            at java.util.concurrent.DelayQueue.take(DelayQueue.java:211)

                            at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:338)

                            at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:300)

                            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)

                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)

                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "WeakDataReference polling" #142 prio=1 os_prio=-2 tid=0x0000000029162800 nid=0xb88 in Object.wait() [0x000000003ef0f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x00000000f3f1a780> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at oracle.ide.util.WeakDataReference$Cleaner.run(WeakDataReference.java:88)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Background Parser#1" #135 prio=6 os_prio=0 tid=0x000000002915b800 nid=0xe0 waiting on condition [0x000000003e80f000]

                           java.lang.Thread.State: TIMED_WAITING (sleeping)

                            at java.lang.Thread.sleep(Native Method)

                            at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:160)

                            at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "TextBufferScavenger" #133 prio=6 os_prio=0 tid=0x000000002171e800 nid=0x27a0 in Object.wait() [0x000000003e60f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x00000000f3f1d640> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at oracle.ide.model.FacadeBufferReference$PollingThread.run(FacadeBufferReference.java:145)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Objectviewer XML Loader" #130 prio=5 os_prio=0 tid=0x0000000021724800 nid=0x27dc runnable [0x000000003e30e000]

                           java.lang.Thread.State: RUNNABLE

                            at java.util.zip.ZipFile.open(Native Method)

                            at java.util.zip.ZipFile.<init>(ZipFile.java:225)

                            at java.util.zip.ZipFile.<init>(ZipFile.java:155)

                            at java.util.jar.JarFile.<init>(JarFile.java:166)

                            at java.util.jar.JarFile.<init>(JarFile.java:103)

                            at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:93)

                            at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69)

                            at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:109)

                            at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122)

                            at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:152)

                            at java.net.URL.openStream(URL.java:1045)

                            at oracle.dbtools.raptor.support.MetaURLReference$U.openInputStream(MetaURLReference.java:82)

                            at oracle.dbtools.raptor.utils.AbstractFolderedXml.processXML(AbstractFolderedXml.java:108)

                            at oracle.dbtools.raptor.oviewer.base.ViewerAddin$Listener.processDescriptors(ViewerAddin.java:163)

                            - locked <0x0000000083f4fb80> (a java.lang.Object)

                            at oracle.dbtools.raptor.oviewer.base.ViewerAddin$Listener.listenerAttached(ViewerAddin.java:146)

                            at oracle.ide.extension.HashStructureHook._fireListenerAttachedEvent(HashStructureHook.java:318)

                            at oracle.ide.extension.HashStructureHook.addHashStructureHookListener(HashStructureHook.java:242)

                            - locked <0x0000000081d4df40> (a java.lang.Object)

                            at oracle.dbtools.raptor.oviewer.base.ViewerAddin.loadXMLEditors(ViewerAddin.java:338)

                            - locked <0x0000000083f4fb80> (a java.lang.Object)

                            at oracle.dbtools.raptor.oviewer.base.ViewerAddin.access$300(ViewerAddin.java:72)

                            at oracle.dbtools.raptor.oviewer.base.ViewerAddin$1$1.run(ViewerAddin.java:204)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "oracle.jdbc.driver.BlockSource.ThreadedCachingBlockSource.BlockReleaser" #128 daemon prio=4 os_prio=-1 tid=0x0000000021727800 nid=0x3350 in Object.wait() [0x000000003e10f000]

                           java.lang.Thread.State: TIMED_WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at oracle.jdbc.driver.BlockSource$ThreadedCachingBlockSource$BlockReleaser.run(BlockSource.java:329)

                            - locked <0x00000000f55f08e8> (a oracle.jdbc.driver.BlockSource$ThreadedCachingBlockSource$BlockReleaser)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Timer-3" #127 daemon prio=5 os_prio=0 tid=0x000000002172a000 nid=0x1688 in Object.wait() [0x000000003e00f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.util.TimerThread.mainLoop(Timer.java:526)

                            - locked <0x00000000f55f0d08> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Background Parser#0" #108 prio=5 os_prio=0 tid=0x0000000021728800 nid=0x1c90 waiting on condition [0x0000000038f0f000]

                           java.lang.Thread.State: TIMED_WAITING (sleeping)

                            at java.lang.Thread.sleep(Native Method)

                            at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:160)

                            at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Disposer" #80 daemon prio=10 os_prio=2 tid=0x000000002202c800 nid=0x2cf0 in Object.wait() [0x000000003206e000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x0000000089d58248> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at com.sun.webkit.Disposer.run(Disposer.java:122)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Prism Font Disposer" #79 daemon prio=10 os_prio=2 tid=0x0000000022030800 nid=0x2fb0 in Object.wait() [0x0000000031f6f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x000000008b085020> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at com.sun.javafx.font.Disposer.run(Disposer.java:93)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Thread-21" #74 daemon prio=5 os_prio=0 tid=0x0000000022032800 nid=0x2a34 runnable [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "JavaFX Application Thread" #73 daemon prio=5 os_prio=0 tid=0x000000002172c000 nid=0x3270 runnable [0x000000003106e000]

                           java.lang.Thread.State: RUNNABLE

                            at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)

                            at com.sun.glass.ui.win.WinApplication.lambda$null$152(WinApplication.java:177)

                            at com.sun.glass.ui.win.WinApplication$$Lambda$86/1751529355.run(Unknown Source)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Thread-20" #72 daemon prio=5 os_prio=0 tid=0x000000002172b800 nid=0x269c waiting on condition [0x0000000030e6f000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x000000008bbe3738> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)

                            at java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:492)

                            at com.sun.glass.ui.InvokeLaterDispatcher.run(InvokeLaterDispatcher.java:108)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "QuantumRenderer-0" #70 daemon prio=5 os_prio=0 tid=0x0000000021727000 nid=0x2584 waiting on condition [0x000000003096e000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x000000008af88c88> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)

                            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)

                            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)

                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)

                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

                            at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Swing-Shell" #67 daemon prio=5 os_prio=0 tid=0x0000000021726000 nid=0x2500 waiting on condition [0x000000002de6e000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x0000000089ce7788> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)

                            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)

                            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)

                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)

                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

                            at sun.awt.shell.Win32ShellFolderManager2$ComInvoker$3.run(Win32ShellFolderManager2.java:556)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "IconOverlayTracker Timer: null-jdbcNodeInfoType" #56 prio=5 os_prio=0 tid=0x0000000021721800 nid=0x184 in Object.wait() [0x000000002bf0f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.util.TimerThread.mainLoop(Timer.java:526)

                            - locked <0x00000000856a7f10> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "WaitCursor-Timer" #52 prio=6 os_prio=0 tid=0x0000000021722800 nid=0xcb8 in Object.wait() [0x000000002b90f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.util.TimerThread.mainLoop(Timer.java:526)

                            - locked <0x00000000854d2310> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "InterruptTimer" #48 daemon prio=5 os_prio=0 tid=0x0000000021724000 nid=0x1cec in Object.wait() [0x000000002a13f000]

                           java.lang.Thread.State: TIMED_WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.util.TimerThread.mainLoop(Timer.java:552)

                            - locked <0x0000000084b9cb38> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "RaptorTaskThread01" #47 prio=5 os_prio=0 tid=0x0000000021723000 nid=0x1b9c waiting on condition [0x0000000029b3e000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x000000008238c250> (a java.util.concurrent.SynchronousQueue$TransferStack)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:458)

                            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)

                            at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:924)

                            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)

                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)

                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Thread-9" #45 daemon prio=5 os_prio=0 tid=0x0000000022031000 nid=0x1364 in Object.wait() [0x000000002983e000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.util.prefs.AbstractPreferences$EventDispatchThread.run(AbstractPreferences.java:1482)

                            - locked <0x00000000810b7080> (a java.util.LinkedList)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Scheduler" #42 daemon prio=5 os_prio=0 tid=0x000000002202e000 nid=0x35c4 in Object.wait() [0x00000000267af000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)

                            - locked <0x000000008238be18> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)

                            at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:548)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Log Poller" #41 prio=1 os_prio=-2 tid=0x0000000022032000 nid=0x1664 waiting on condition [0x00000000264af000]

                           java.lang.Thread.State: WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x0000000082353018> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)

                            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)

                            at oracle.ide.log.QueuedLoggingHandler.take(QueuedLoggingHandler.java:60)

                            at oracle.ideimpl.log.TabbedLogManager$4.run(TabbedLogManager.java:333)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "TimedCache-Timer" #33 daemon prio=5 os_prio=0 tid=0x000000001cd16000 nid=0x1014 in Object.wait() [0x00000000251af000]

                           java.lang.Thread.State: TIMED_WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.util.TimerThread.mainLoop(Timer.java:552)

                            - locked <0x000000008128f988> (a java.util.TaskQueue)

                            at java.util.TimerThread.run(Timer.java:505)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Framework Event Dispatcher" #25 daemon prio=5 os_prio=0 tid=0x000000001cd11800 nid=0xbfc in Object.wait() [0x0000000021a3f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)

                            - locked <0x0000000080bfb850> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)

                            at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Framework Active Thread" #22 prio=5 os_prio=0 tid=0x000000001cd18000 nid=0x850 in Object.wait() [0x000000002086f000]

                           java.lang.Thread.State: TIMED_WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at org.eclipse.osgi.framework.internal.core.Framework.run(Framework.java:1870)

                            - locked <0x0000000080a51df8> (a org.eclipse.osgi.framework.internal.core.Framework)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Active Reference Queue Daemon" #18 daemon prio=1 os_prio=-2 tid=0x000000001c86b000 nid=0x23f8 in Object.wait() [0x000000001ee9f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x00000000808648d8> (a java.lang.ref.ReferenceQueue$Lock)

                            at org.openide.util.lookup.implspi.ActiveQueue$Impl.removeSuper(ActiveQueue.java:93)

                            at org.openide.util.lookup.implspi.ActiveQueue$Daemon.run(ActiveQueue.java:131)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "TimerQueue" #16 daemon prio=5 os_prio=0 tid=0x000000001c647000 nid=0xcf8 waiting on condition [0x000000001e19f000]

                           java.lang.Thread.State: TIMED_WAITING (parking)

                            at sun.misc.Unsafe.park(Native Method)

                            - parking to wait for  <0x000000008052f6b0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)

                            at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)

                            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)

                            at java.util.concurrent.DelayQueue.take(DelayQueue.java:223)

                            at javax.swing.TimerQueue.run(TimerQueue.java:174)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - <0x000000008052f6d8> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)

                         

                        "AWT-EventQueue-0" #15 prio=6 os_prio=0 tid=0x000000001c5e6800 nid=0x3248 runnable [0x000000001d32c000]

                           java.lang.Thread.State: RUNNABLE

                            at java.util.zip.ZipFile.open(Native Method)

                            at java.util.zip.ZipFile.<init>(ZipFile.java:225)

                            at java.util.zip.ZipFile.<init>(ZipFile.java:155)

                            at java.util.jar.JarFile.<init>(JarFile.java:166)

                            at java.util.jar.JarFile.<init>(JarFile.java:103)

                            at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:93)

                            at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69)

                            at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:109)

                            at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122)

                            at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:152)

                            at java.net.URL.openStream(URL.java:1045)

                            at oracle.dbtools.raptor.support.MetaURLReference$U.openInputStream(MetaURLReference.java:82)

                            at oracle.dbtools.raptor.utils.AbstractFolderedXml.processXML(AbstractFolderedXml.java:108)

                            at oracle.dbtools.raptor.dialogs.actions.XMLBasedObjectAction.loadXML(XMLBasedObjectAction.java:574)

                            - locked <0x00000000daed6778> (a java.lang.Object)

                            - locked <0x00000000daed6768> (a java.lang.Object)

                            at oracle.dbtools.raptor.dialogs.actions.XMLBasedObjectAction.addToMenu(XMLBasedObjectAction.java:441)

                            at oracle.dbtools.raptor.dialogs.BasicObjectModifier.menuWillShow(BasicObjectModifier.java:87)

                            at oracle.ide.controller.ContextMenuListenersHook$LazyContextMenuListener.menuWillShow(ContextMenuListenersHook.java:198)

                            at oracle.ide.controller.ContextMenu.invokeMenuWillShow(ContextMenu.java:690)

                            at oracle.ide.controller.ContextMenu.callMenuWillShow(ContextMenu.java:580)

                            at oracle.ide.controller.ContextMenu.prepareShow(ContextMenu.java:325)

                            at oracle.ide.controller.ContextMenu.show(ContextMenu.java:290)

                            at oracle.dbtools.raptor.navigator.core.NavigatorUI.tryPopup(NavigatorUI.java:555)

                            at oracle.dbtools.raptor.navigator.core.NavigatorUI.mouseReleased(NavigatorUI.java:499)

                            at oracle.ideimpl.explorer.CustomTree.processMouseEvent(CustomTree.java:242)

                            at java.awt.Component.processEvent(Component.java:6304)

                            at java.awt.Container.processEvent(Container.java:2239)

                            at java.awt.Component.dispatchEventImpl(Component.java:4889)

                            at java.awt.Container.dispatchEventImpl(Container.java:2297)

                            at java.awt.Component.dispatchEvent(Component.java:4711)

                            at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)

                            at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)

                            at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)

                            at java.awt.Container.dispatchEventImpl(Container.java:2283)

                            at java.awt.Window.dispatchEventImpl(Window.java:2746)

                            at java.awt.Component.dispatchEvent(Component.java:4711)

                            at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)

                            at java.awt.EventQueue.access$500(EventQueue.java:97)

                            at java.awt.EventQueue$3.run(EventQueue.java:709)

                            at java.awt.EventQueue$3.run(EventQueue.java:703)

                            at java.security.AccessController.doPrivileged(Native Method)

                            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)

                            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)

                            at java.awt.EventQueue$4.run(EventQueue.java:733)

                            at java.awt.EventQueue$4.run(EventQueue.java:731)

                            at java.security.AccessController.doPrivileged(Native Method)

                            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)

                            at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)

                            at oracle.javatools.internal.ui.EventQueueWrapper._dispatchEvent(EventQueueWrapper.java:169)

                            at oracle.javatools.internal.ui.EventQueueWrapper.dispatchEvent(EventQueueWrapper.java:151)

                            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)

                            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)

                            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)

                            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)

                            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)

                            at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "AWT-Windows" #13 daemon prio=6 os_prio=0 tid=0x000000001c5db800 nid=0x3498 runnable [0x000000001d17f000]

                           java.lang.Thread.State: RUNNABLE

                            at sun.awt.windows.WToolkit.eventLoop(Native Method)

                            at sun.awt.windows.WToolkit.run(WToolkit.java:313)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "AWT-Shutdown" #12 prio=5 os_prio=0 tid=0x000000001c5d9000 nid=0x2780 in Object.wait() [0x000000001d07f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)

                            - locked <0x000000008052fc28> (a java.lang.Object)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Java2D Disposer" #11 daemon prio=10 os_prio=2 tid=0x000000001c5d8000 nid=0x1568 in Object.wait() [0x000000001cf7e000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x000000008085c728> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at sun.java2d.Disposer.run(Disposer.java:148)

                            at java.lang.Thread.run(Thread.java:748)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Service Thread" #9 daemon prio=9 os_prio=0 tid=0x000000001bf48800 nid=0xf48 runnable [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "C1 CompilerThread2" #8 daemon prio=9 os_prio=2 tid=0x000000001a62d800 nid=0x29b8 waiting on condition [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "C2 CompilerThread1" #7 daemon prio=9 os_prio=2 tid=0x000000001a618800 nid=0x2ed4 waiting on condition [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "C2 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x000000001a616800 nid=0x1984 waiting on condition [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x000000001a612000 nid=0x2bc0 waiting on condition [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x000000001a60d800 nid=0xfc4 runnable [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Finalizer" #3 daemon prio=8 os_prio=1 tid=0x000000001a5ef000 nid=0x3494 in Object.wait() [0x000000001b94f000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)

                            - locked <0x000000008081cd70> (a java.lang.ref.ReferenceQueue$Lock)

                            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:165)

                            at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:216)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x000000001a5e8800 nid=0x2d3c in Object.wait() [0x000000001b84e000]

                           java.lang.Thread.State: WAITING (on object monitor)

                            at java.lang.Object.wait(Native Method)

                            at java.lang.Object.wait(Object.java:502)

                            at java.lang.ref.Reference.tryHandlePending(Reference.java:191)

                            - locked <0x00000000806a64e8> (a java.lang.ref.Reference$Lock)

                            at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "main" #1 prio=5 os_prio=0 tid=0x00000000058e8000 nid=0x2680 waiting on condition [0x0000000000000000]

                           java.lang.Thread.State: RUNNABLE

                         

                           Locked ownable synchronizers:

                            - None

                         

                        "VM Thread" os_prio=2 tid=0x000000001a5c7800 nid=0x3050 runnable

                         

                        "GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00000000058fd800 nid=0x2e34 runnable

                         

                        "GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00000000058ff000 nid=0x2644 runnable

                         

                        "GC task thread#2 (ParallelGC)" os_prio=0 tid=0x0000000005900800 nid=0xf18 runnable

                         

                        "GC task thread#3 (ParallelGC)" os_prio=0 tid=0x0000000005902000 nid=0xb40 runnable

                         

                        "VM Periodic Task Thread" os_prio=2 tid=0x000000001bf83800 nid=0x730 waiting on condition

                         

                        JNI global references: 3517

                        • 9. Re: SQL Developer Freezes Frequently
                          thatJeffSmith-Oracle

                          Where exactly is SQL Developer installed - on a network folder, or something like a Citrix rig for example? Or on a local file system that might be...almost full or in need of defragging?

                          • 10. Re: SQL Developer Freezes Frequently
                            nklean01_mlsi

                            SQL Developer is downloaded and extracted on the local file system (under the user account folder). Then it is run from there. I have tried both the version that has JDK included and the one that does not, and the result is the same.

                            • 11. Re: SQL Developer Freezes Frequently
                              Glen Conway

                              The only weird thing I see in the dump is two different threads (one of them the main event thread) opening streams:

                              Capture.JPG

                              This image only includes lines displaying the text "ZipFile", "JarFile", or "openStream" in those threads.  They seem to be either loading an XMLEditor and adding it to the context menu, as near as I can tell. And there is one object shown as locked twice in the "Objectviewer XML Loader" thread

                              locked <0x0000000083f4fb80> (a java.lang.Object)

                              Not sure whether that is normal or not.

                              • 12. Re: SQL Developer Freezes Frequently
                                thatJeffSmith-Oracle

                                Our best guess is something hinky is going on between SQLDev and the file system

                                 

                                In order to see if that's indeed happening, follow these instructions, we can then see how long it's taking for various things to happen

                                 

                                1. In sqldeveloper/bin/logging.conf, add/uncomment oracle.level = INFO

                                2. Start sqldeveloper, open the log panel, and wait for preferences indexing to finish

                                Check Logging Page for IndexPreferencesTask: -- mine was 8076ms 101 pages indexed

                                3. Open a connection by clicking the expand item button next to it in the navigator and wait for open to complete (worksheet open, tree expanded under the connection node)

                                Check Logging Page for Time to loadXMLEditors(): -- mine was 543ms

                                4. Right click on the connection and wait for context menu to appear

                                Check Logging Page for Time to loadXML(): -- mine was 373ms

                                You can also set the logging to a file in Preferences->Environment/log (then restart and do 1-4 again.) The advantage with this is that the entries are time stamped so if it’s not one of the things I know are hitting the file system (or not file system related at all), we can see where the time gap is.Setting oracle.level = FINE will make the log more detailed but also much bigger.

                                • 13. Re: SQL Developer Freezes Frequently
                                  nklean01_mlsi

                                  Hi Jeff and thanks for your support.

                                   

                                  I have captured the following logs that you've mentioned:

                                   

                                  • IndexPreferencesTask: 15603ms 101 pages indexed
                                  • loadXMLEditors(): 220.019ms
                                  • loadXML(): 152.495ms

                                   

                                  Some additional logs (not INFO) from the log file that may help:

                                   

                                  SEVERE    120    422    oracle.ide.extension.HashStructureHook    Unexpected runtime exception while delivering HashStructureHookEvent

                                  WARNING    371    4625    oracle.dbtools.raptor.utils.AbstractFolderedXml    jar:file:/C:/Users/.../sqldeveloper/sqldeveloper/extensions/oracle.sqldeveloper.jar!/oracle/dbtools/raptor/dialogs/actions/xml/column.out.xml-Start of root element expected.

                                   

                                  System information from the log file:

                                  JavaFX: 8.0.202-b07

                                  OS:     Windows 10,amd64

                                  WebKit: Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/606.1 (KHTML, like Gecko) JavaFX/8.0 Safari/606.1

                                  JS ON: true

                                   

                                  Sometimes SQL Developer causes the system to hang and a restart is required.

                                   

                                  The actual Windows version is Windows 10 Pro Version 1709 OS Build 16299.1087

                                   

                                  Please let me know if anything else is needed.