This discussion is archived
14 Replies Latest reply: Jan 9, 2013 5:56 AM by Jeff Smith SQLDev PM RSS

3.1EA1: Terrible startup time/processor again

-K- Guru
Currently Being Moderated
Hi,

Seems the terrible startup issue related to the SQL History is back. It takes more than half an hour to load, with 100% CPU (50% on dual)!
Here's 2 dumps while starting up:
2011-10-13 09:02:37
Full thread dump Java HotSpot(TM) Client VM (19.1-b02 mixed mode):

"BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x052f8800 nid=0x151c waiting on condition [0x07f5f000]
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x1e776158> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
        at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399)
        at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:662)

"pool-2-thread-1" prio=6 tid=0x05231400 nid=0x1434 waiting on condition [0x07e5f000]
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x1e7762b0> (a java.util.concurrent.SynchronousQueue$TransferStack)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
        at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:422)
        at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
        at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:857)
        at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:662)

"Scheduler" daemon prio=6 tid=0x0521ec00 nid=0x11e8 in Object.wait() [0x07d5f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1e7763d0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
        at java.lang.Object.wait(Object.java:485)
        at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
        - locked <0x1e7763d0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
        at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:444)

"Thread-9" daemon prio=6 tid=0x051ca400 nid=0x11d8 in Object.wait() [0x05f0f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1e776468> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
        - locked <0x1e776468> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
        at org.tmatesoft.svn.core.javahl.SVNClientImplTracker.run(SVNClientImplTracker.java:65)
        at java.lang.Thread.run(Thread.java:662)

"TimerQueue" daemon prio=6 tid=0x05214000 nid=0xe68 in Object.wait() [0x0600f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1e776570> (a javax.swing.TimerQueue)
        at javax.swing.TimerQueue.run(TimerQueue.java:232)
        - locked <0x1e776570> (a javax.swing.TimerQueue)
        at java.lang.Thread.run(Thread.java:662)

"ChangeSetService" prio=2 tid=0x050d7400 nid=0x13ec in Object.wait() [0x0775f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1e333b68> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
        at java.lang.Object.wait(Object.java:485)
        at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
        - locked <0x1e333b68> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
        at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
        at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
        at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
        at java.lang.Thread.run(Thread.java:662)

"Thread-7" daemon prio=6 tid=0x04f07c00 nid=0x1320 runnable [0x0747f000]
   java.lang.Thread.State: RUNNABLE
        at sun.print.Win32PrintServiceLookup.notifyPrinterChange(Native Method)
        at sun.print.Win32PrintServiceLookup.access$100(Win32PrintServiceLookup.java:32)
        at sun.print.Win32PrintServiceLookup$PrinterChangeListener.run(Win32PrintServiceLookup.java:302)

"TimedCache-Timer" daemon prio=6 tid=0x039d2400 nid=0xa98 in Object.wait() [0x045ff000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d560610> (a java.util.TaskQueue)
        at java.util.TimerThread.mainLoop(Timer.java:509)
        - locked <0x1d560610> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:462)

"JarIndex Timer" daemon prio=6 tid=0x03a16400 nid=0xa74 in Object.wait() [0x040ff000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d5606c8> (a java.util.TaskQueue)
        at java.util.TimerThread.mainLoop(Timer.java:509)
        - locked <0x1d5606c8> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:462)

"AWT-EventQueue-0" prio=6 tid=0x039cbc00 nid=0x1450 runnable [0x03fee000]
   java.lang.Thread.State: RUNNABLE
        at oracle.dbtools.parser.Earley.complete(Earley.java:464)
        at oracle.dbtools.parser.Earley.parse(Earley.java:93)
        at oracle.dbtools.parser.plsql.SqlHistory.generateTemplate(SqlHistory.java:57)
        at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.readHistory(HistoryDB.java:97)
        at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.<init>(HistoryDB.java:54)
        at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.getInstance(HistoryDB.java:48)
        at oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory.migrateOldHistory(SqlEditorHistory.java:45)
        at oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory.getInstance(SqlEditorHistory.java:38)
        - locked <0x3b404360> (a java.lang.Class for oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory)
        at oracle.dbtools.worksheet.sqlhistory.SqlHistoryDockable.getGUI(SqlHistoryDockable.java:36)
        at oracle.ide.docking.DockableWindow.getHostedComponent(DockableWindow.java:231)
        at oracle.ideimpl.docking.TitledPanelHolder.getOrCreateComponent(TitledPanelHolder.java:47)
        at oracle.ideimpl.docking.TitledPanel.setPageVisible(TitledPanel.java:881)
        at oracle.ideimpl.docking.TitledPanel.showClient(TitledPanel.java:858)
        at oracle.ideimpl.docking.TitledPanel.setClientVisible(TitledPanel.java:841)
        at oracle.ideimpl.docking.TitledPanel.setClientVisible(TitledPanel.java:819)
        at oracle.ideimpl.docking.TitledPanel.loadVisibilityLayout(TitledPanel.java:1789)
        at oracle.ideimpl.docking.DockPanel.loadVisibilityLayout(DockPanel.java:200)
        at oracle.ideimpl.docking.AbstractDockPanelHost.loadVisibilityLayout(AbstractDockPanelHost.java:94)
        at oracle.ideimpl.docking.DockStationImpl.onStartup(DockStationImpl.java:1634)
        at oracle.ideimpl.docking.DockStationImpl.loadLayout(DockStationImpl.java:1473)
        at oracle.ideimpl.docking.DockStationListener.init(DockStationListener.java:36)
        at oracle.ide.layout.Layouts.activate(Layouts.java:814)
        at oracle.ide.layout.Layouts.activateLayout(Layouts.java:192)
        at oracle.ideimpl.MainWindowImpl$6.runImpl(MainWindowImpl.java:730)
        at oracle.javatools.util.SwingClosure$1Closure.run(SwingClosure.java:50)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
        at java.awt.EventQueue.access$000(EventQueue.java:85)
        at java.awt.EventQueue$1.run(EventQueue.java:603)
        at java.awt.EventQueue$1.run(EventQueue.java:601)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

"AWT-Windows" daemon prio=6 tid=0x03997c00 nid=0x12cc runnable [0x03def000]
   java.lang.Thread.State: RUNNABLE
        at sun.awt.windows.WToolkit.eventLoop(Native Method)
        at sun.awt.windows.WToolkit.run(WToolkit.java:293)
        at java.lang.Thread.run(Thread.java:662)

"AWT-Shutdown" prio=6 tid=0x03997000 nid=0x1428 in Object.wait() [0x03cef000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d5608b8> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:485)
        at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:265)
        - locked <0x1d5608b8> (a java.lang.Object)
        at java.lang.Thread.run(Thread.java:662)

"Java2D Disposer" daemon prio=10 tid=0x03992400 nid=0xf60 in Object.wait() [0x03bef000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d560950> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
        - locked <0x1d560950> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
        at sun.java2d.Disposer.run(Disposer.java:127)
        at java.lang.Thread.run(Thread.java:662)

"Low Memory Detector" daemon prio=6 tid=0x02fd1000 nid=0x17dc runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"CompilerThread0" daemon prio=10 tid=0x02fcb400 nid=0x11e0 waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Attach Listener" daemon prio=10 tid=0x02fc9c00 nid=0x132c runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x02fc8800 nid=0x9fc waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=8 tid=0x02fbac00 nid=0x136c in Object.wait() [0x0333f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d560c70> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
        - locked <0x1d560c70> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x02fb6000 nid=0x244 in Object.wait() [0x0323f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d560d00> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:485)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
        - locked <0x1d560d00> (a java.lang.ref.Reference$Lock)

"main" prio=6 tid=0x00b47800 nid=0x9bc in Object.wait() [0x0013e000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1e5b4ce0> (a java.awt.EventQueue$1AWTInvocationLock)
        at java.lang.Object.wait(Object.java:485)
        at java.awt.EventQueue.invokeAndWait(EventQueue.java:1038)
        - locked <0x1e5b4ce0> (a java.awt.EventQueue$1AWTInvocationLock)
        at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1326)
        at oracle.javatools.util.SwingClosure.run(SwingClosure.java:73)
        at oracle.ideimpl.MainWindowImpl.postInitialize(MainWindowImpl.java:705)
        at oracle.ide.IdeCore.startupImpl(IdeCore.java:1584)
        at oracle.ide.Ide.startup(Ide.java:703)
        at oracle.ideimpl.DefaultIdeStarter.startIde(DefaultIdeStarter.java:35)
        at oracle.ideimpl.Main.start(Main.java:184)
        at oracle.ideimpl.Main.main(Main.java:146)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at oracle.ide.boot.PCLMain.callMain(PCLMain.java:62)
        at oracle.ide.boot.PCLMain.main(PCLMain.java:54)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at oracle.classloader.util.MainClass.invoke(MainClass.java:128)
        at oracle.ide.boot.IdeLauncher.bootClassLoadersAndMain(IdeLauncher.java:189)
        at oracle.ide.boot.IdeLauncher.launchImpl(IdeLauncher.java:89)
        at oracle.ide.boot.IdeLauncher.launch(IdeLauncher.java:65)
        at oracle.ide.boot.IdeLauncher.main(IdeLauncher.java:54)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at oracle.ide.boot.Launcher.invokeMain(Launcher.java:713)
        at oracle.ide.boot.Launcher.launchImpl(Launcher.java:115)
        at oracle.ide.boot.Launcher.launch(Launcher.java:68)
        at oracle.ide.boot.Launcher.main(Launcher.java:57)

"VM Thread" prio=10 tid=0x02fb2400 nid=0x1384 runnable

"VM Periodic Task Thread" prio=10 tid=0x02fdc400 nid=0x11e4 waiting on condition

JNI global references: 2708

Heap
 def new generation   total 39424K, used 25797K [0x10010000, 0x12ad0000, 0x1d560000)
  eden space 35072K,  75% used [0x10010000, 0x119d9b78, 0x12250000)
  from space 4352K,   2% used [0x12690000, 0x126af1a0, 0x12ad0000)
  to   space 4352K,   0% used [0x12250000, 0x12250000, 0x12690000)
 tenured generation   total 87424K, used 49614K [0x1d560000, 0x22ac0000, 0x38010000)
   the space 87424K,  56% used [0x1d560000, 0x205d39e0, 0x205d3a00, 0x22ac0000)
 compacting perm gen  total 53760K, used 53748K [0x38010000, 0x3b490000, 0x40010000)
   the space 53760K,  99% used [0x38010000, 0x3b48d1c8, 0x3b48d200, 0x3b490000)
No shared spaces configured.

Parser.forest(): no suitable branches
 alter java class "oracle/jpub/runtime/dbws/DbwsProxy" compile ;
Hope that helps for debugging,
K.
  • 1. Re: 3.1EA1: Terrible startup time/processor again
    -K- Guru
    Currently Being Moderated
    2011-10-13 09:03:17
    Full thread dump Java HotSpot(TM) Client VM (19.1-b02 mixed mode):
    
    "BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x052f8800 nid=0x151c waiting on condition [0x07f5f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x1e776158> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            at java.lang.Thread.run(Thread.java:662)
    
    "pool-2-thread-1" prio=6 tid=0x05231400 nid=0x1434 waiting on condition [0x07e5f000]
       java.lang.Thread.State: WAITING (parking)
            at sun.misc.Unsafe.park(Native Method)
            - parking to wait for  <0x1e7762b0> (a java.util.concurrent.SynchronousQueue$TransferStack)
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:422)
            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
            at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:857)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            at java.lang.Thread.run(Thread.java:662)
    
    "Scheduler" daemon prio=6 tid=0x0521ec00 nid=0x11e8 in Object.wait() [0x07d5f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1e7763d0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
            at java.lang.Object.wait(Object.java:485)
            at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
            - locked <0x1e7763d0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
            at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:444)
    
    "Thread-9" daemon prio=6 tid=0x051ca400 nid=0x11d8 in Object.wait() [0x05f0f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1e776468> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x1e776468> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at org.tmatesoft.svn.core.javahl.SVNClientImplTracker.run(SVNClientImplTracker.java:65)
            at java.lang.Thread.run(Thread.java:662)
    
    "TimerQueue" daemon prio=6 tid=0x05214000 nid=0xe68 in Object.wait() [0x0600f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1e776570> (a javax.swing.TimerQueue)
            at javax.swing.TimerQueue.run(TimerQueue.java:232)
            - locked <0x1e776570> (a javax.swing.TimerQueue)
            at java.lang.Thread.run(Thread.java:662)
    
    "ChangeSetService" prio=2 tid=0x050d7400 nid=0x13ec in Object.wait() [0x0775f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1e333b68> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
            at java.lang.Object.wait(Object.java:485)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
            - locked <0x1e333b68> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
            at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
            at java.lang.Thread.run(Thread.java:662)
    
    "Thread-7" daemon prio=6 tid=0x04f07c00 nid=0x1320 runnable [0x0747f000]
       java.lang.Thread.State: RUNNABLE
            at sun.print.Win32PrintServiceLookup.notifyPrinterChange(Native Method)
            at sun.print.Win32PrintServiceLookup.access$100(Win32PrintServiceLookup.java:32)
            at sun.print.Win32PrintServiceLookup$PrinterChangeListener.run(Win32PrintServiceLookup.java:302)
    
    "TimedCache-Timer" daemon prio=6 tid=0x039d2400 nid=0xa98 in Object.wait() [0x045ff000]
       java.lang.Thread.State: TIMED_WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d560610> (a java.util.TaskQueue)
            at java.util.TimerThread.mainLoop(Timer.java:509)
            - locked <0x1d560610> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    
    "JarIndex Timer" daemon prio=6 tid=0x03a16400 nid=0xa74 in Object.wait() [0x040ff000]
       java.lang.Thread.State: TIMED_WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d5606c8> (a java.util.TaskQueue)
            at java.util.TimerThread.mainLoop(Timer.java:509)
            - locked <0x1d5606c8> (a java.util.TaskQueue)
            at java.util.TimerThread.run(Timer.java:462)
    
    "AWT-EventQueue-0" prio=6 tid=0x039cbc00 nid=0x1450 runnable [0x03fee000]
       java.lang.Thread.State: RUNNABLE
            at java.lang.String.intern(Native Method)
            at oracle.dbtools.parser.LexerToken.<init>(LexerToken.java:37)
            at oracle.dbtools.parser.LexerToken.tokenize(LexerToken.java:189)
            at oracle.dbtools.parser.LexerToken.parse(LexerToken.java:268)
            at oracle.dbtools.parser.LexerToken.parse(LexerToken.java:262)
            at oracle.dbtools.parser.LexerToken.parse(LexerToken.java:233)
            at oracle.dbtools.parser.plsql.Substr.add(Substr.java:64)
            at oracle.dbtools.parser.plsql.Substr.generateTemplate(Substr.java:135)
            at oracle.dbtools.parser.plsql.SqlHistory.generateTemplate(SqlHistory.java:63)
            at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.readHistory(HistoryDB.java:97)
            at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.<init>(HistoryDB.java:54)
            at oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.getInstance(HistoryDB.java:48)
            at oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory.migrateOldHistory(SqlEditorHistory.java:45)
            at oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory.getInstance(SqlEditorHistory.java:38)
            - locked <0x3b404360> (a java.lang.Class for oracle.dbtools.worksheet.sqlhistory.SqlEditorHistory)
            at oracle.dbtools.worksheet.sqlhistory.SqlHistoryDockable.getGUI(SqlHistoryDockable.java:36)
            at oracle.ide.docking.DockableWindow.getHostedComponent(DockableWindow.java:231)
            at oracle.ideimpl.docking.TitledPanelHolder.getOrCreateComponent(TitledPanelHolder.java:47)
            at oracle.ideimpl.docking.TitledPanel.setPageVisible(TitledPanel.java:881)
            at oracle.ideimpl.docking.TitledPanel.showClient(TitledPanel.java:858)
            at oracle.ideimpl.docking.TitledPanel.setClientVisible(TitledPanel.java:841)
            at oracle.ideimpl.docking.TitledPanel.setClientVisible(TitledPanel.java:819)
            at oracle.ideimpl.docking.TitledPanel.loadVisibilityLayout(TitledPanel.java:1789)
            at oracle.ideimpl.docking.DockPanel.loadVisibilityLayout(DockPanel.java:200)
            at oracle.ideimpl.docking.AbstractDockPanelHost.loadVisibilityLayout(AbstractDockPanelHost.java:94)
            at oracle.ideimpl.docking.DockStationImpl.onStartup(DockStationImpl.java:1634)
            at oracle.ideimpl.docking.DockStationImpl.loadLayout(DockStationImpl.java:1473)
            at oracle.ideimpl.docking.DockStationListener.init(DockStationListener.java:36)
            at oracle.ide.layout.Layouts.activate(Layouts.java:814)
            at oracle.ide.layout.Layouts.activateLayout(Layouts.java:192)
            at oracle.ideimpl.MainWindowImpl$6.runImpl(MainWindowImpl.java:730)
            at oracle.javatools.util.SwingClosure$1Closure.run(SwingClosure.java:50)
            at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
            at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
            at java.awt.EventQueue.access$000(EventQueue.java:85)
            at java.awt.EventQueue$1.run(EventQueue.java:603)
            at java.awt.EventQueue$1.run(EventQueue.java:601)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    
    "AWT-Windows" daemon prio=6 tid=0x03997c00 nid=0x12cc runnable [0x03def000]
       java.lang.Thread.State: RUNNABLE
            at sun.awt.windows.WToolkit.eventLoop(Native Method)
            at sun.awt.windows.WToolkit.run(WToolkit.java:293)
            at java.lang.Thread.run(Thread.java:662)
    
    "AWT-Shutdown" prio=6 tid=0x03997000 nid=0x1428 in Object.wait() [0x03cef000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d5608b8> (a java.lang.Object)
            at java.lang.Object.wait(Object.java:485)
            at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:265)
            - locked <0x1d5608b8> (a java.lang.Object)
            at java.lang.Thread.run(Thread.java:662)
    
    "Java2D Disposer" daemon prio=10 tid=0x03992400 nid=0xf60 in Object.wait() [0x03bef000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d560950> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x1d560950> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at sun.java2d.Disposer.run(Disposer.java:127)
            at java.lang.Thread.run(Thread.java:662)
    
    "Low Memory Detector" daemon prio=6 tid=0x02fd1000 nid=0x17dc runnable [0x00000000]
       java.lang.Thread.State: RUNNABLE
    
    "CompilerThread0" daemon prio=10 tid=0x02fcb400 nid=0x11e0 waiting on condition [0x00000000]
       java.lang.Thread.State: RUNNABLE
    
    "Attach Listener" daemon prio=10 tid=0x02fc9c00 nid=0x132c runnable [0x00000000]
       java.lang.Thread.State: RUNNABLE
    
    "Signal Dispatcher" daemon prio=10 tid=0x02fc8800 nid=0x9fc waiting on condition [0x00000000]
       java.lang.Thread.State: RUNNABLE
    
    "Finalizer" daemon prio=8 tid=0x02fbac00 nid=0x136c in Object.wait() [0x0333f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d560c70> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            - locked <0x1d560c70> (a java.lang.ref.ReferenceQueue$Lock)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    
    "Reference Handler" daemon prio=10 tid=0x02fb6000 nid=0x244 in Object.wait() [0x0323f000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1d560d00> (a java.lang.ref.Reference$Lock)
            at java.lang.Object.wait(Object.java:485)
            at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
            - locked <0x1d560d00> (a java.lang.ref.Reference$Lock)
    
    "main" prio=6 tid=0x00b47800 nid=0x9bc in Object.wait() [0x0013e000]
       java.lang.Thread.State: WAITING (on object monitor)
            at java.lang.Object.wait(Native Method)
            - waiting on <0x1e5b4ce0> (a java.awt.EventQueue$1AWTInvocationLock)
            at java.lang.Object.wait(Object.java:485)
            at java.awt.EventQueue.invokeAndWait(EventQueue.java:1038)
            - locked <0x1e5b4ce0> (a java.awt.EventQueue$1AWTInvocationLock)
            at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1326)
            at oracle.javatools.util.SwingClosure.run(SwingClosure.java:73)
            at oracle.ideimpl.MainWindowImpl.postInitialize(MainWindowImpl.java:705)
            at oracle.ide.IdeCore.startupImpl(IdeCore.java:1584)
            at oracle.ide.Ide.startup(Ide.java:703)
            at oracle.ideimpl.DefaultIdeStarter.startIde(DefaultIdeStarter.java:35)
            at oracle.ideimpl.Main.start(Main.java:184)
            at oracle.ideimpl.Main.main(Main.java:146)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at oracle.ide.boot.PCLMain.callMain(PCLMain.java:62)
            at oracle.ide.boot.PCLMain.main(PCLMain.java:54)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at oracle.classloader.util.MainClass.invoke(MainClass.java:128)
            at oracle.ide.boot.IdeLauncher.bootClassLoadersAndMain(IdeLauncher.java:189)
            at oracle.ide.boot.IdeLauncher.launchImpl(IdeLauncher.java:89)
            at oracle.ide.boot.IdeLauncher.launch(IdeLauncher.java:65)
            at oracle.ide.boot.IdeLauncher.main(IdeLauncher.java:54)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at oracle.ide.boot.Launcher.invokeMain(Launcher.java:713)
            at oracle.ide.boot.Launcher.launchImpl(Launcher.java:115)
            at oracle.ide.boot.Launcher.launch(Launcher.java:68)
            at oracle.ide.boot.Launcher.main(Launcher.java:57)
    
    "VM Thread" prio=10 tid=0x02fb2400 nid=0x1384 runnable
    
    "VM Periodic Task Thread" prio=10 tid=0x02fdc400 nid=0x11e4 waiting on condition
    
    JNI global references: 2710
    
    Heap
     def new generation   total 39424K, used 33621K [0x10010000, 0x12ad0000, 0x1d560000)
      eden space 35072K,  94% used [0x10010000, 0x1204b440, 0x12250000)
      from space 4352K,  14% used [0x12690000, 0x1272a0c0, 0x12ad0000)
      to   space 4352K,   0% used [0x12250000, 0x12250000, 0x12690000)
     tenured generation   total 87424K, used 49913K [0x1d560000, 0x22ac0000, 0x38010000)
       the space 87424K,  57% used [0x1d560000, 0x2061e6f8, 0x2061e800, 0x22ac0000)
     compacting perm gen  total 54016K, used 53899K [0x38010000, 0x3b4d0000, 0x40010000)
       the space 54016K,  99% used [0x38010000, 0x3b4b2de8, 0x3b4b2e00, 0x3b4d0000)
    No shared spaces configured.
  • 2. Re: 3.1EA1: Terrible startup time/processor again
    Vadim Tropashko Pro
    Currently Being Moderated
    If you clean SQL History would startup time improve?
  • 3. Re: 3.1EA1: Terrible startup time/processor again
    -K- Guru
    Currently Being Moderated
    Although the answer was obviously yes, I did try renaming the existing dir to confirm.
    But equally obvious is we might not want to clean our history every few days or weeks.
    And after the same problems in the early 3.0's you managed to fix it by release also...

    Would you need anything else to debug?

    Thanks,
    K.
  • 4. Re: 3.1EA1: Terrible startup time/processor again
    460522 Explorer
    Currently Being Moderated
    Hi,

    I too have the similar problem regarding this SQL History matter.
    It seems there is some heavy logic to maintain SQL History every startup time.
    The other workaround is to close SQL History before closing SQL Dev, this would make SQL History not pre-loaded on next startup.
    However, opening SQL History would again causes the unnecessary lagging.

    Btw, off the topic here, just a small old minor GUI defect on SQL History,
    The TimeStamp sort order should be the downside arrow instead of upside arrow, since the sorting logic is to show the last executed statement, therefore DESC (downside arrrow).

    Regards,

    Buntoro
  • 5. Re: 3.1EA1: Terrible startup time/processor again
    Vadim Tropashko Pro
    Currently Being Moderated
    Can you please archive history folder and email it to me (first.last@certaindbcompany.com) to reproduce the problem? Or, at least, couple largest files together with info how many files total is in the folder (in other words, what is you SQL History limit)?
  • 6. Re: 3.1EA1: Terrible startup time/processor again
    -K- Guru
    Currently Being Moderated
    I currently have 28MB (39MB on disk) in 3800 files, only 6 slightly over 1MB and 38 over 100KB.

    In case it wasn't clear, 3.0 doesn't have the slightest noticeable slowdown.

    Hope that helps,
    K.
  • 7. Re: 3.1EA1: Terrible startup time/processor again
    Vadim Tropashko Pro
    Currently Being Moderated
    Thank you Kristoff, I've limited SQL History parsing to 100 items which should take care of the issue. Expect fix in EA2.
  • 8. Re: 3.1EA1: Terrible startup time/processor again
    -K- Guru
    Currently Being Moderated
    OK, thanks.
    But will that affect functionality in any way?

    Regards,
    K.
  • 9. Re: 3.1EA1: Terrible startup time/processor again
    499310 Journeyer
    Currently Being Moderated
    The entire SQL History is being preserved. It won't affect history functionality.

    Buntoro,
    I am looking into the Sort icon.

    -Raghu
  • 10. Re: 3.1EA1: Terrible startup time/processor again
    -K- Guru
    Currently Being Moderated
    Cool, thanks again,
    K.
  • 11. Re: 3.1EA1: Terrible startup time/processor again
    Micki Newbie
    Currently Being Moderated
    I am experiencing the same problem. And just to emphasize, this worked fine in version 3.0. And also I remembered that there was the exact same issue with SQL history in an earlier EA release, which was subsequently fixed.

    Thanks,

    Michael
  • 12. Re: 3.1EA1: Terrible startup time/processor again
    Gary Graham Expert
    Currently Being Moderated
    Hi Micki,

    Actually, I believe the issue is slightly different. My understanding is that code insight has been enhanced to draw from SQL History in addition to the prior sources.

    Cheers,
    Gary
    SQL Developer Team
  • 13. Re: 3.1EA1: Terrible startup time/processor again
    983689 Newbie
    Currently Being Moderated
    I am getting the following error whenever I login to sql developer.

    SEVERE     56     0     oracle.jdbc     Error while registering Oracle JDBC Diagnosability MBean.

    I get below error whenever I execute any query.

    SEVERE     70     53918     oracle.dbtools.worksheet.sqlhistory.SqlHistoryTask     oracle.dbtools.worksheet.sqlhistory.db.HistoryDB.readHistory(HistoryDB.java:99)

    I use following versions

    Java(TM) Platform     1.6.0_35
    Oracle IDE     3.2.20.09.87
    Versioning Support     3.2.20.09.87

    I am working on Oracle11gR2.

    Please help me to resolve this and let me know if you need more information.
  • 14. Re: 3.1EA1: Terrible startup time/processor again
    Jeff Smith SQLDev PM ACE Moderator
    Currently Being Moderated
    980686 , can you please start this as a new thread?

    Thanks,
    Jeff

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points