OutOfMemory on Copy/Paste operations
Using the last eap, i've witnessed a strange behavior this morning.
I tried moving some html code around in a file, using cut/paste, but when pasting a OOM dialog pops requesting ignore/shutdown.
The IDEA Memory indicator only indicates 220/350Mb though, and there does not seem to be any reason for excessive allocation (i'm just copy/pasting a "</span>" element).
The COPY operation works ok (i can paste what i copy in another applicaiton) but the paste fails
edit : when first pasting the copied text in an external editor (notepad for example), and then recopying it, I can then paste it in IDEA
Message was edited by:
Thibaut
Message was edited by:
Thibaut
Please sign in to leave a comment.
just checked the idea.log file, there's nothing special in it, nor any RCOD
Hello Thibaut,
I cannot reproduce the case you describe. I once had different issue with
Quirks mode inspection:
http://www.jetbrains.net/jira/browse/IDEADEV-19011
It is fixed now. Maybe, this is one more case with the same inspection?
Alexander.
Hello Thibaut,
This very much sounds like a PermGen issue, not a regular OOME. Depending on what features/plugins
you work with, IDEA's default PermGen size can be a bit small. Increasing it should help.
Sascha
I can verify seeing this as well. It's moderately rare (~twice per month) and I have not been able to come up with a repro sequence. If it matters, I'm on MacOS X.
--Dave Griffith
this does not seem to be the same issue as far as I can tell, there is nothing specially weird going with memory (usage doesn't grow), but i couldn't paste anymore from Intellij to Intellij, even if
- pasting from notepad to intellij
- pasting from intellij to notepad
worked ok
my guess would be a problem with java datatransfer but i didn't check if there is any bug registered in the bug parade
Follow up : using 7269 i had to start idea using idea.bat
The permgen space error suggested by previous posters indeed showed up :
idea.bat [YourKit Java Profiler 6.0.8] Using JVMTI (1.6.0_02-b05;Sun Microsystems Inc.;mixed mode, sharing;Windows;32 bit JVM) [YourKit Java Profiler 6.0.8] Profiler agent is listening on port 10001... [YourKit Java Profiler 6.0.8] *** HINT ***: To get profiling results, connect to the application from the profiler UI Installing Commit Comment Editor in Changes Toolwindow for Project 20070903 HBFR CSO HFE JSF V 1.0 committing change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\testresources\app_config.xml] change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\test\com\hsbc\es\jsfui\framework\nls\FacesContextBasedResourceBundleTest.java] change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\java\com\hsbc\es\nfs\impl\formatters\numericvalueformatter\numericformatter\Nu mericImpl.java] change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\java\com\hsbc\es\nfs\impl\formatters\numericvalueformatter\numericformatter\De faultNumericFormatter.java] change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\testresources\vc_config.xml] rootsChanged rootsChanged committing change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\java\com\hsbc\es\jsfui\common\renderkit\html\popup\PopupOutputter.java] change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\java\com\hsbc\es\jsfui\common\renderkit\html\popup\PopupRenderer.java] committing change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\java\com\hsbc\es\jsfui\common\renderkit\html\textarea\TextareaTextareaOutputte r.java] committing change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\test\com\hsbc\es\nfs\impl\formatters\numericvalueformatter\numericformatter\My ServletFacesContext.java] committing change MODIFIED CurrentContentRevision:FilePath[C:\Documents and Settings\A6253567.HBEU\sandboxes\DS1\5.6.5\es-jsf-ui-web\testresources\vc_config.xml] [INFO] snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT: checking for updates from group-ds2 [WARNING] repository metadata for: 'snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT' could not be retrieved from repository: group-ds2 due to an error: Error transferring file [INFO] Repository 'group-ds2' will be blacklisted [INFO] snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT: checking for updates from group-m2 [WARNING] repository metadata for: 'snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT' could not be retrieved from repository: group-m2 due to an error: Error transferring file [INFO] Repository 'group-m2' will be blacklisted [INFO] snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT: checking for updates from group-proxy [WARNING] repository metadata for: 'snapshot com.hsbc.esf:ds2-parent:1.0.0-SNAPSHOT' could not be retrieved from repository: group-proxy due to an error: Error transferring file [INFO] Repository 'group-proxy' will be blacklisted java.lang.OutOfMemoryError: PermGen space Dumping heap to java_pid2832.hprof ... Heap dump file created [147710953 bytes in 7.475 secs] java.lang.OutOfMemoryError: PermGen space at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:620) at java.lang.ClassLoader.defineClass(ClassLoader.java:465) at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:116) at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:112) at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:88) at com.intellij.ide.plugins.cl.PluginClassLoader._loadClass(PluginClassLoader.java:43) at com.intellij.util.lang.UrlClassLoader.loadClass(UrlClassLoader.java:64) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at org.jetbrains.idea.maven.project.MavenProjectReader.readResolved(MavenProjectReader.java:47) at org.jetbrains.idea.maven.project.MavenProjectModel$Node.resolve(MavenProjectModel.java:248) at org.jetbrains.idea.maven.project.MavenProjectModel$1.visit(MavenProjectModel.java:129) at org.jetbrains.idea.maven.project.MavenProjectModel$1.visit(MavenProjectModel.java:120) at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:54) at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:74) at org.jetbrains.idea.maven.project.MavenProjectModel.visit(MavenProjectModel.java:180) at org.jetbrains.idea.maven.project.MavenProjectModel.resolve(MavenProjectModel.java:120) at org.jetbrains.idea.maven.project.MavenImportProcessor.resolve(MavenImportProcessor.java:186) at org.jetbrains.idea.maven.project.MavenImportProcessor.access$000(MavenImportProcessor.java:31) at org.jetbrains.idea.maven.project.MavenImportProcessor$2.run(MavenImportProcessor.java:144) at com.intellij.openapi.progress.impl.ProgressManagerImpl$3.run(ProgressManagerImpl.java:2) at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:11) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:14) at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:28) at com.intellij.openapi.application.impl.ApplicationImpl$7$1.run(ApplicationImpl.java:13) at com.intellij.openapi.application.impl.ApplicationImpl$5.run(ApplicationImpl.java:1) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) java.lang.OutOfMemoryError: PermGen space at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:620) at java.lang.ClassLoader.defineClass(ClassLoader.java:465) at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:116) at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:112) at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:88) at com.intellij.ide.plugins.cl.PluginClassLoader._loadClass(PluginClassLoader.java:43) at com.intellij.util.lang.UrlClassLoader.loadClass(UrlClassLoader.java:64) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at org.jetbrains.idea.maven.project.MavenToIdeaConverter.sortProjectsByDependencies(MavenToIdeaConverter.java:81) at org.jetbrains.idea.maven.project.MavenToIdeaConverter.convert(MavenToIdeaConverter.java:54) at org.jetbrains.idea.maven.project.MavenImportProcessor$3.run(MavenImportProcessor.java:160) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:284) at org.jetbrains.idea.maven.project.MavenImportProcessor.commit(MavenImportProcessor.java:158) at org.jetbrains.idea.maven.project.action.MavenImportBuilder.commit(MavenImportBuilder.java:60) at com.intellij.projectImport.ProjectOpenProcessor.doOpenProject(ProjectOpenProcessor.java:5) at com.intellij.ide.impl.ProjectUtil.openOrImport(ProjectUtil.java:34) at com.intellij.ide.actions.OpenProjectAction.actionPerformed(OpenProjectAction.java:2) at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:5) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:1) at com.intellij.ui.plaf.beg.BegMenuItemUI.a(BegMenuItemUI.java:122) at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:168) at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:7) at java.awt.Component.processMouseEvent(Component.java:6038) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at java.awt.Component.processEvent(Component.java:5803) at java.awt.Container.processEvent(Container.java:2058) at java.awt.Component.dispatchEventImpl(Component.java:4410) at java.awt.Container.dispatchEventImpl(Container.java:2116) at java.awt.Component.dispatchEvent(Component.java:4240) ]]>The heapdump, when zipped, is 40Mb large, would it help ?
Looks like classloader leak in maven embedder. Can you please try not
using embedded maven and see if the problem remains?
On 2007-09-09 22:09:50 +0400, Thibaut <no_reply@jetbrains.com> said:
I had a look at the hprof heapdump file using YJP, but it doesn't have any information about permgen generation, and i couldn't find any significant (to me at least) clue about an anormal number of classloaders