Clion 1.2.4 UI Unresponsive when accessing syntax tree

I've noticed very long pauses (10-30s) when I perform certain operations.  Most of these seem to do with accessing the syntax tree (I assume this is generally how all refactoring/analysis tasks generally work).  In the latest example of this, I had a header file that contained a single class with a single function definition.  I switched to the cpp file and executed 'Implement functions'.  This caused the whole GUI to become unresponsive - everything stopped repainting (minimizing the window and unminimizing in KDE caused the screen to be grey).  I took a stack trace with jstack and this revealed the problem.  Below is the stack trace from the AWT-EventQueue thread.  Why is CLion doing high-cost tasks on the event thread?

"AWT-EventQueue-0 1.2.4#CL-143.1186.2, eap:false" #26 prio=6 os_prio=0 tid=0x00007fd0d43c2800 nid=0x2bef runnable [0x00007fd0dd27b000]
java.lang.Thread.State: RUNNABLE
at gnu.trove.TObjectHash.equals(TObjectHash.java:300)
at gnu.trove.TObjectHash.insertionIndex(TObjectHash.java:228)
at gnu.trove.THashSet.add(THashSet.java:137)
at gnu.trove.THashSet.addAll(THashSet.java:310)
at com.jetbrains.cidr.lang.symbols.symtable.OCContextSignatureBuilder.exitConformanceCheckMode(OCContextSignatureBuilder.java:81)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.a(OCInclusionContext.java:599)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.a(OCInclusionContext.java:603)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.checkConformanceAndFillSignatures(OCInclusionContext.java:194)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack.findConformingTable(FileSymbolTablesPack.java:194)
- locked <0x00000000a0374198> (a java.util.ArrayList)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:355)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:847)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:812)
at com.jetbrains.cidr.lang.resolve.OCResolveUtil.processSymbolsFromList(OCResolveUtil.java:660)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessFile(OCInclusionContext.java:996)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:796)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:847)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:812)
at com.jetbrains.cidr.lang.resolve.OCResolveUtil.processSymbolsFromList(OCResolveUtil.java:660)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessFile(OCInclusionContext.java:996)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:796)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:847)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext$1Builder.process(OCInclusionContext.java:812)
at com.jetbrains.cidr.lang.resolve.OCResolveUtil.processSymbolsFromList(OCResolveUtil.java:660)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessFile(OCInclusionContext.java:996)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:796)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x000000009f970d78> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x000000009fa0c228> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x000000009fce5ca8> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x000000009f907d20> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:180)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x00000000a2a75488> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:180)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:180)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x00000000a394d4c0> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:486)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:486)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:180)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x00000000a39501c0> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:793)
at com.jetbrains.cidr.lang.preprocessor.OCInclusionContext.preprocessInclude(OCInclusionContext.java:1023)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.b(OCPreprocessingLexer.java:726)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:171)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:180)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.i(OCPreprocessingLexer.java:532)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.a(OCPreprocessingLexer.java:469)
at com.jetbrains.cidr.lang.preprocessor.OCPreprocessingLexer.lookAhead(OCPreprocessingLexer.java:186)
at com.intellij.lexer.LookAheadLexer.doLookAhead(LookAheadLexer.java:73)
at com.intellij.lexer.LookAheadLexer.advance(LookAheadLexer.java:65)
at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:284)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:192)
at com.intellij.lang.impl.PsiBuilderImpl.<init>(PsiBuilderImpl.java:159)
at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:78)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:64)
at com.jetbrains.cidr.lang.symbols.symtable.OCSymbolTableProvider.calcTable(OCSymbolTableProvider.java:30)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesCache.forFile(FileSymbolTablesCache.java:416)
- locked <0x00000000a39dfd90> (a com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTablesPack)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:176)
at com.jetbrains.cidr.lang.symbols.symtable.FileSymbolTable.forFile(FileSymbolTable.java:166)
at com.jetbrains.cidr.lang.psi.impl.OCFileImpl.getSymbolTable(OCFileImpl.java:296)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCFileGlobalSymbolsCache.processFileImpl(OCFileGlobalSymbolsCache.java:169)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCFileGlobalSymbolsCache.processFile(OCFileGlobalSymbolsCache.java:113)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCLightFileGlobalSymbols.buildSymbols(OCLightFileGlobalSymbols.java:47)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCFileGlobalSymbolsCache$3.createValue(OCFileGlobalSymbolsCache.java:58)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCFileGlobalSymbolsCache$3.createValue(OCFileGlobalSymbolsCache.java:54)
at com.jetbrains.cidr.lang.psi.impl.symbols.SLRUSynchronizedCache$1$1.compute(SLRUSynchronizedCache.java:20)
at com.intellij.openapi.util.NotNullLazyValue.getValue(NotNullLazyValue.java:39)
at com.jetbrains.cidr.lang.psi.impl.symbols.SLRUSynchronizedCache.get(SLRUSynchronizedCache.java:38)
- locked <0x0000000089680978> (a com.jetbrains.cidr.lang.psi.impl.symbols.SLRUSynchronizedCache$1$1)
at com.jetbrains.cidr.lang.psi.impl.symbols.OCFileGlobalSymbolsCache.typesOnlyTableForFile(OCFileGlobalSymbolsCache.java:87)
at com.jetbrains.cidr.lang.psi.impl.OCFileImpl.getMembersContainer(OCFileImpl.java:310)
at com.jetbrains.cidr.lang.symbols.OCSymbolReferenceResolver.processSymbolsForGlobalRef(OCSymbolReferenceResolver.java:197)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.doResolve(OCSymbolReference.java:642)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.resolveToSymbols(OCSymbolReference.java:566)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.doResolveToSymbols(OCResolveContext.java:108)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.resolveToSymbols(OCResolveContext.java:124)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.doResolve(OCSymbolReference.java:645)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.resolveToSymbols(OCSymbolReference.java:566)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.doResolveToSymbols(OCResolveContext.java:108)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.resolveToSymbols(OCResolveContext.java:124)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.doResolve(OCSymbolReference.java:645)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.resolveToSymbols(OCSymbolReference.java:566)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.doResolveToSymbols(OCResolveContext.java:108)
at com.jetbrains.cidr.lang.symbols.OCSymbolReferenceResolver.processSymbolsForGlobalRef(OCSymbolReferenceResolver.java:161)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.doResolve(OCSymbolReference.java:663)
at com.jetbrains.cidr.lang.symbols.OCSymbolReference.resolveToSymbols(OCSymbolReference.java:566)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.doResolveToSymbols(OCResolveContext.java:108)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.resolveToSymbols(OCResolveContext.java:124)
at com.jetbrains.cidr.lang.symbols.OCResolveContext.resolveToSymbols(OCResolveContext.java:119)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.getResolvedQualifiedName(OCSymbolWithQualifiedName.java:163)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.a(OCSymbolWithQualifiedName.java:447)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.access$000(OCSymbolWithQualifiedName.java:39)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName$1.process(OCSymbolWithQualifiedName.java:358)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName$1.process(OCSymbolWithQualifiedName.java:337)
at com.jetbrains.cidr.lang.util.OCCommonProcessors$OrderedProcessor.finish(OCCommonProcessors.java:103)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.processSameSymbols(OCSymbolWithQualifiedName.java:387)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.processSameSymbols(OCSymbolWithQualifiedName.java:326)
at com.jetbrains.cidr.lang.symbols.cpp.OCSymbolWithQualifiedName.getDefinitionSymbol(OCSymbolWithQualifiedName.java:296)
at com.jetbrains.cidr.lang.generate.actions.OCOverrideImplementCppActionContext$1.process(OCOverrideImplementCppActionContext.java:47)
at com.jetbrains.cidr.lang.generate.actions.OCOverrideImplementCppActionContext$1.process(OCOverrideImplementCppActionContext.java:42)
at com.jetbrains.cidr.lang.util.OCCommonProcessors$TypeFilteredProcessor.process(OCCommonProcessors.java:40)
at com.intellij.util.containers.MostlySingularMultiMap.processValue(MostlySingularMultiMap.java:106)
at com.intellij.util.containers.MostlySingularMultiMap.processAllValues(MostlySingularMultiMap.java:114)
at com.jetbrains.cidr.lang.symbols.cpp.OCNamespaceSymbol.processMembers(OCNamespaceSymbol.java:162)
at com.jetbrains.cidr.lang.symbols.cpp.OCStructSymbol.processMembers(OCStructSymbol.java:254)
at com.jetbrains.cidr.lang.generate.actions.OCOverrideImplementCppActionContext.getMemberCandidates(OCOverrideImplementCppActionContext.java:42)
at com.jetbrains.cidr.lang.generate.actions.OCCppClassTextActionHandlerBase$4.value(OCCppClassTextActionHandlerBase.java:209)
at com.jetbrains.cidr.lang.generate.actions.OCCppClassTextActionHandlerBase$4.value(OCCppClassTextActionHandlerBase.java:205)
at com.intellij.util.containers.ContainerUtil.findAll(ContainerUtil.java:1024)
at com.intellij.util.containers.ContainerUtil.filter(ContainerUtil.java:1003)
at com.jetbrains.cidr.lang.generate.actions.OCCppClassTextActionHandlerBase.getParents(OCCppClassTextActionHandlerBase.java:205)
at com.jetbrains.cidr.lang.generate.actions.OCCppClassTextActionHandlerBase.invoke(OCCppClassTextActionHandlerBase.java:105)
at com.jetbrains.cidr.lang.generate.handlers.OCPresentableActionHandler.invoke(OCPresentableActionHandler.java:36)
at com.intellij.codeInsight.generation.ImplementMethodsHandler.invoke(ImplementMethodsHandler.java:42)
at com.intellij.codeInsight.actions.CodeInsightAction$1$1.run(CodeInsightAction.java:62)
at com.intellij.codeInsight.actions.CodeInsightAction$1.run(CodeInsightAction.java:69)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:124)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:85)
at com.intellij.codeInsight.actions.CodeInsightAction.actionPerformedImpl(CodeInsightAction.java:54)
at com.intellij.codeInsight.actions.CodeInsightAction.actionPerformed(CodeInsightAction.java:40)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:182)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$1.run(ActionMenuItem.java:311)
at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:958)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:124)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:281)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:109)
at com.intellij.ui.plaf.beg.BegMenuItemUI.a(BegMenuItemUI.java:513)
at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:45)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:533)
at java.awt.Component.processMouseEvent(Component.java:6525)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6290)
at java.awt.Container.processEvent(Container.java:2234)
at java.awt.Component.dispatchEventImpl(Component.java:4881)
at java.awt.Container.dispatchEventImpl(Container.java:2292)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
at java.awt.Container.dispatchEventImpl(Container.java:2278)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:866)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:381)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

 

5 comments
Comment actions Permalink

Hi Matt.

Sorry for the inconvenience! Could you also please capture a CPU snapshot so we can take a look at what is going on.

0
Comment actions Permalink

I can't capture a CPU snapshot because the UI is totally unresponsive.  Is it possible to do this from the command line?

0
Comment actions Permalink

When IDE hangs and doesn't respond so that you can't use the menu to capture the snapshot, please provide the thread dumps.

0
Comment actions Permalink

This is getting pretty frustrating - CLion locks the entire GUI when doing almost anything involving the cache.  Making a change to CMakeLists.txt locks the GUI for almost 30 seconds while the cache rebuilds.  While I'm sure you guys will work on making this faster, it seems like the threading model is fundamentally broken.  Can anyone from JetBrains comment on whether there will be any effort to move high-cost work off of the AWT Event Thread?

0
Comment actions Permalink

Hi Matt. 

Our team have analyzed the log and we've created the issue in our tracker: https://youtrack.jetbrains.com/issue/CPP-5609. Hopefully it will be fixed soon. Feel free to add your comments there or upvote.

0

Please sign in to leave a comment.