Can't exit RubyMine - got to kill the process.
The problem appeared with the firsrt release candidate.
My system details:
Ubuntu 10.10, 2.6.36-020636rc7-generic #201010070908
Would you please help me with that?
TIA,
Anatoly Kotlyar
Please sign in to leave a comment.
Hello Anatoly,
Could you please attach thread dump as described here: http://devnet.jetbrains.net/docs/DOC-1144 ?
Regards,
Oleg
Hi Oleg,
It looks like I figured out the cause of the issue. RM can't exit because it waits for the server process to detach. The reason for such a behavior is still a mystery for me, but I'll be running RM with '-agentlib:yjpagent' flag enabled and post some more information if I find something.
Thanks for your help,
- Anatoly
Looking forward for more information.
Thanks in advance,
Oleg
Did you ever find what was causing this? I'm suffering from the same problem currently. After closing the (last) main window, minimizing and maximizing, the window remains gray: no redraws.
The application fully utilizes one core, but doesn't seem to do anything otherwise. There are not ThreadDumps in the approriate directory.
The last lines in idea.log are
2011-03-22 16:08:07,462 [16076950] INFO - home.idea.vim.undo.UndoManager - editorClosed
2011-03-22 16:08:10,811 [16080299] INFO - j.util.indexing.FileBasedIndex - START INDEX SHUTDOWN
2011-03-22 16:08:10,854 [16080342] INFO - j.util.indexing.FileBasedIndex - END INDEX SHUTDOWN
2011-03-22 16:08:10,855 [16080343] INFO - .history.utils.LocalHistoryLog - Purging local history...
jconsole shows the AWT-eventqueue thread is busy with the stacktrace below (when you poll the thread a number of times, this is the trace you see the vast majority of times. Of course, the line numbers of the last few lines aren't constant)
Name: AWT-EventQueue-1 3.1#RM-103.105, eap:false
State: RUNNABLE
Total blocked: 1,258,579 Total waited: 1,380,274
Stack trace:
com.intellij.util.io.RandomAccessDataFile.get(RandomAccessDataFile.java:93)
com.intellij.util.io.RandomAccessDataFile.getInt(RandomAccessDataFile.java:110)
com.intellij.history.core.LocalHistoryRecordsTable.getPrevRecord(LocalHistoryRecordsTable.java:104)
com.intellij.history.core.LocalHistoryStorage.getPrevRecord(LocalHistoryStorage.java:72)
- locked java.lang.Object@4c053407
com.intellij.history.core.ChangeListStorageImpl.a(ChangeListStorageImpl.java:179)
com.intellij.history.core.ChangeListStorageImpl.purge(ChangeListStorageImpl.java:147)
- locked com.intellij.history.core.ChangeListStorageImpl@699ade8e
com.intellij.history.core.ChangeList.purgeObsolete(ChangeList.java:170)
- locked com.intellij.history.core.ChangeList@368972cc
com.intellij.history.integration.LocalHistoryImpl.disposeComponent(LocalHistoryImpl.java:129)
com.intellij.openapi.components.impl.ComponentManagerImpl.disposeComponents(ComponentManagerImpl.java:161)
com.intellij.openapi.application.impl.ApplicationImpl.dispose(ApplicationImpl.java:505)
com.intellij.openapi.util.Disposer$1.execute(Disposer.java:37)
com.intellij.openapi.util.Disposer$1.execute(Disposer.java:35)
com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:124)
com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:106)
com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:151)
com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:106)
com.intellij.openapi.util.objectTree.ObjectTree.executeAll(ObjectTree.java:133)
com.intellij.openapi.util.Disposer.dispose(Disposer.java:95)
com.intellij.openapi.util.Disposer.dispose(Disposer.java:91)
com.intellij.openapi.application.impl.ApplicationImpl.d(ApplicationImpl.java:291)
com.intellij.openapi.application.impl.ApplicationImpl.access$100(ApplicationImpl.java:81)
com.intellij.openapi.application.impl.ApplicationImpl$9.run(ApplicationImpl.java:702)
com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:716)
com.intellij.openapi.application.impl.ApplicationImpl.exit(ApplicationImpl.java:673)
com.intellij.ide.actions.ExitAction.actionPerformed(ExitAction.java:31)
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$1.run(ActionMenuItem.java:242)
com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:645)
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:228)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:92)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:374)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:829)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:873)
java.awt.Component.processMouseEvent(Component.java:6203)
javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
java.awt.Component.processEvent(Component.java:5968)
java.awt.Container.processEvent(Container.java:2105)
java.awt.Component.dispatchEventImpl(Component.java:4564)
java.awt.Container.dispatchEventImpl(Container.java:2163)
java.awt.Component.dispatchEvent(Component.java:4390)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
java.awt.Container.dispatchEventImpl(Container.java:2149)
java.awt.Window.dispatchEventImpl(Window.java:2478)
java.awt.Component.dispatchEvent(Component.java:4390)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
java.awt.EventQueue.access$000(EventQueue.java:96)
java.awt.EventQueue$1.run(EventQueue.java:608)
java.awt.EventQueue$1.run(EventQueue.java:606)
java.security.AccessController.doPrivileged(Native Method)
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
java.awt.EventQueue$2.run(EventQueue.java:622)
java.awt.EventQueue$2.run(EventQueue.java:620)
java.security.AccessController.doPrivileged(Native Method)
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
com.intellij.ide.IdeEventQueue.e(IdeEventQueue.java:652)
com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:501)
com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:404)
com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:368)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
Hello Ivo,
Could you please create an issue at http://youtrack.jetbrains.net/issues/RUBY and attach full threaddump there?
Regards,
Oleg