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

rm_info.png

Would you please help me with that?

TIA,
Anatoly Kotlyar

0
Avatar
Permanently deleted user

Hello Anatoly,

Could you please attach thread dump as described here: http://devnet.jetbrains.net/docs/DOC-1144 ?

Regards,
Oleg

0
Avatar
Permanently deleted user

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

0
Avatar
Permanently deleted user

Looking forward for more information.

Thanks in advance,
Oleg

0
Avatar
Permanently deleted user

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)

0
Avatar
Permanently deleted user

Hello Ivo,

Could you please create an issue at http://youtrack.jetbrains.net/issues/RUBY and attach full threaddump there?

Regards,
Oleg

0

请先登录再写评论。