Noam-Dori / ros-integrate

Extends IntelliJ-Based IDEs with ROS specific development tools
Apache License 2.0
22 stars 3 forks source link

0.1.3 Freeze on exetrnal file changes #16

Closed peci1 closed 4 years ago

peci1 commented 4 years ago

When I ran catkin_make in a console (which can change some of the files monitored by CLion), my IDE froze. And CLion marked ROS Support as the problematic plugin.

Freeze in EDT for 182 seconds
IDE KILLED! Sampled time: 165200ms, sampling rate: 100ms, GC time: 421ms (0%), Class loading: 0%

com.intellij.diagnostic.Freeze
    at java.base@11.0.4/java.lang.Object.wait(Native Method)
    at java.base@11.0.4/java.util.concurrent.ForkJoinTask.externalAwaitDone(ForkJoinTask.java:330)
    at java.base@11.0.4/java.util.concurrent.ForkJoinTask.doInvoke(ForkJoinTask.java:412)
    at java.base@11.0.4/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:736)
    at java.base@11.0.4/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:159)
    at java.base@11.0.4/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:173)
    at java.base@11.0.4/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
    at java.base@11.0.4/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
    at java.base@11.0.4/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:661)
    at ros.integrate.workspace.ROSPackageManagerImpl.doBulkFileChangeEvents(ROSPackageManagerImpl.java:119)
    at ros.integrate.workspace.ROSPackageManagerImpl.access$300(ROSPackageManagerImpl.java:28)
    at ros.integrate.workspace.ROSPackageManagerImpl$1.after(ROSPackageManagerImpl.java:52)
    at jdk.internal.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
    at java.base@11.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@11.0.4/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:513)
    at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:142)
    at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:438)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:398)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:388)
    at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:370)
    at com.intellij.util.messages.impl.MessageBusImpl.lambda$createTopicHandler$1(MessageBusImpl.java:241)
    at com.intellij.util.messages.impl.MessageBusImpl$$Lambda$312/0x000000080046c840.invoke(Unknown Source)
    at com.sun.proxy.$Proxy43.modificationCountChanged(Unknown Source)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.fireEvent(PsiModificationTrackerImpl.java:70)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incCountersInner(PsiModificationTrackerImpl.java:75)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incOutOfCodeBlockModificationCounter(PsiModificationTrackerImpl.java:65)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$1.incModificationCount(FileSymbolTablesCache.java:130)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$3.done(FileSymbolTablesCache.java:205)
    at com.jetbrains.cidr.VirtualFileChangeListener.after(VirtualFileChangeListener.kt:76)
    at jdk.internal.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
    at java.base@11.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@11.0.4/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:513)
    at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:142)
    at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:438)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:398)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:388)
    at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:370)
    at com.intellij.util.messages.impl.MessageBusImpl.lambda$createTopicHandler$1(MessageBusImpl.java:241)
    at com.intellij.util.messages.impl.MessageBusImpl$$Lambda$312/0x000000080046c840.invoke(Unknown Source)
    at com.sun.proxy.$Proxy43.modificationCountChanged(Unknown Source)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.fireEvent(PsiModificationTrackerImpl.java:70)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incCountersInner(PsiModificationTrackerImpl.java:75)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incOutOfCodeBlockModificationCounter(PsiModificationTrackerImpl.java:65)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$1.incModificationCount(FileSymbolTablesCache.java:130)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$3.done(FileSymbolTablesCache.java:205)
    at com.jetbrains.cidr.VirtualFileChangeListener.after(VirtualFileChangeListener.kt:76)
    at jdk.internal.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
    at java.base@11.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@11.0.4/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:513)
    at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:142)
    at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:438)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:398)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:388)
    at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:370)
    at com.intellij.util.messages.impl.MessageBusImpl.lambda$createTopicHandler$1(MessageBusImpl.java:241)
    at com.intellij.util.messages.impl.MessageBusImpl$$Lambda$312/0x000000080046c840.invoke(Unknown Source)
    at com.sun.proxy.$Proxy43.modificationCountChanged(Unknown Source)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.fireEvent(PsiModificationTrackerImpl.java:70)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incCountersInner(PsiModificationTrackerImpl.java:75)
    at com.intellij.psi.impl.PsiModificationTrackerImpl.incOutOfCodeBlockModificationCounter(PsiModificationTrackerImpl.java:65)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$1.incModificationCount(FileSymbolTablesCache.java:130)
    at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache$3.done(FileSymbolTablesCache.java:205)
    at com.jetbrains.cidr.VirtualFileChangeListener.after(VirtualFileChangeListener.kt:76)
    at jdk.internal.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
    at java.base@11.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@11.0.4/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:513)
    at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:142)
    at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:438)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:398)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:388)
    at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:372)
    at com.intellij.util.messages.impl.MessageBusImpl.lambda$createTopicHandler$1(MessageBusImpl.java:241)
    at com.intellij.util.messages.impl.MessageBusImpl$$Lambda$312/0x000000080046c840.invoke(Unknown Source)
    at com.sun.proxy.$Proxy129.after(Unknown Source)
    at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.processEvents(PersistentFSImpl.java:983)
    at com.intellij.openapi.vfs.newvfs.AsyncEventSupport.processEvents(AsyncEventSupport.java:124)
    at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEventsInWriteAction(RefreshSessionImpl.java:193)
    at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.lambda$fireEvents$1(RefreshSessionImpl.java:180)
    at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl$$Lambda$3391/0x0000000801ab3040.run(Unknown Source)
    at com.intellij.openapi.application.WriteAction.run(WriteAction.java:98)
    at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEvents(RefreshSessionImpl.java:180)
    at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.lambda$tryProcessingEvents$5(RefreshQueueImpl.java:152)
    at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl$$Lambda$779/0x0000000800963040.run(Unknown Source)
    at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:83)
    at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:107)
    at com.intellij.openapi.application.TransactionGuardImpl$$Lambda$561/0x00000008006fa040.run(Unknown Source)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:441)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:424)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407)
    at java.desktop@11.0.4/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
    at java.desktop@11.0.4/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
    at java.desktop@11.0.4/java.awt.EventQueue$4.run(EventQueue.java:727)
    at java.desktop@11.0.4/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.base@11.0.4/java.security.AccessController.doPrivileged(Native Method)
    at java.base@11.0.4/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop@11.0.4/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:906)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:779)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:422)
    at com.intellij.ide.IdeEventQueue$$Lambda$532/0x00000008006a1840.compute(Unknown Source)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:698)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:421)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop@11.0.4/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Noam-Dori commented 4 years ago

It seems this issue is caused by a rogue parallel stream that triggers during indexing. I think I fixed it by the next version (0.1.4) which should be available to everyone very soon. If the IDE still freezes for you, please report so in this thread along with the new thread dump you get for it so I can get to fixing it as soon as possible.