Open brittyazel opened 1 year ago
Can confirm, with a very large amount of files, the IDE is completely freezing, and the CPU usage can go all the way up to 100%, with IDEA CPU usage averaging 70-80%. It shows this stack trace after opening it back. This behavior is not present on EmmyLua < v1.4.1 and rolling back to v1.3.20 fixes the issue.
Freeze for 158 seconds
IDE KILLED! Sampled time: 128400ms, sampling rate: 100ms, GC time: 18482ms (12%), Class loading: 0%, cpu load: 32%
The stack is from the thread that was blocking EDT
com.intellij.diagnostic.Freeze
at com.tang.intellij.lua.ty.ExpressionsKt.infer(Expressions.kt:189)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExprInner(Expressions.kt:50)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExpr(Expressions.kt:43)
at com.tang.intellij.lua.ty.DeclarationsKt.inferInner(Declarations.kt:42)
at com.tang.intellij.lua.ty.LuaTypeInfer.inferType(LuaTypeInfer.kt:25)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.inferImpl(ILuaTypeInfer.kt:41)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.infer(ILuaTypeInfer.kt:35)
at com.tang.intellij.lua.search.SearchContext.inferAndCache(SearchContext.kt:151)
at com.tang.intellij.lua.search.SearchContext.access$inferAndCache(SearchContext.kt:34)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion.with(SearchContext.kt:62)
at com.tang.intellij.lua.search.SearchContext$Companion.infer(SearchContext.kt:57)
at com.tang.intellij.lua.psi.LuaTypeGuessable.guessType(LuaTypeGuessable.java:29)
at com.tang.intellij.lua.psi.LuaPsiImplUtilKt.guessParentType(LuaPsiImplUtil.kt:262)
at com.tang.intellij.lua.psi.impl.LuaIndexExprImpl.guessParentType(LuaIndexExprImpl.java:93)
at com.tang.intellij.lua.ty.ExpressionsKt.infer$lambda$8(Expressions.kt:364)
at com.tang.intellij.lua.ty.ExpressionsKt$$Lambda$6950/0x0000000102c6fae8.compute(Unknown Source)
at com.intellij.openapi.util.RecursionGuard$$Lambda$1498/0x00000001010d50f8.compute(Unknown Source)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:66)
at com.tang.intellij.lua.ext.UtilsKt.recursionGuard(utils.kt:27)
at com.tang.intellij.lua.ext.UtilsKt.recursionGuard$default(utils.kt:26)
at com.tang.intellij.lua.ty.ExpressionsKt.infer(Expressions.kt:323)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExprInner(Expressions.kt:56)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExpr(Expressions.kt:43)
at com.tang.intellij.lua.ty.DeclarationsKt.inferInner(Declarations.kt:42)
at com.tang.intellij.lua.ty.LuaTypeInfer.inferType(LuaTypeInfer.kt:25)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.inferImpl(ILuaTypeInfer.kt:41)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.infer(ILuaTypeInfer.kt:35)
at com.tang.intellij.lua.search.SearchContext.inferAndCache(SearchContext.kt:151)
at com.tang.intellij.lua.search.SearchContext.access$inferAndCache(SearchContext.kt:34)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion.with(SearchContext.kt:62)
at com.tang.intellij.lua.search.SearchContext$Companion.infer(SearchContext.kt:57)
at com.tang.intellij.lua.ty.DeclarationsKt.infer(Declarations.kt:36)
at com.tang.intellij.lua.ty.ExpressionsKt.infer(Expressions.kt:323)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExprInner(Expressions.kt:56)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExpr(Expressions.kt:43)
at com.tang.intellij.lua.ty.DeclarationsKt.inferInner(Declarations.kt:42)
at com.tang.intellij.lua.ty.LuaTypeInfer.inferType(LuaTypeInfer.kt:25)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.inferImpl(ILuaTypeInfer.kt:41)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.infer(ILuaTypeInfer.kt:35)
at com.tang.intellij.lua.search.SearchContext.inferAndCache(SearchContext.kt:151)
at com.tang.intellij.lua.search.SearchContext.access$inferAndCache(SearchContext.kt:34)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion.with(SearchContext.kt:62)
at com.tang.intellij.lua.search.SearchContext$Companion.infer(SearchContext.kt:57)
at com.tang.intellij.lua.psi.LuaTypeGuessable.guessType(LuaTypeGuessable.java:29)
at com.tang.intellij.lua.psi.LuaPsiImplUtilKt$guessTypeAt$1.invoke(LuaPsiImplUtil.kt:255)
at com.tang.intellij.lua.psi.LuaPsiImplUtilKt$guessTypeAt$1.invoke(LuaPsiImplUtil.kt:255)
at com.tang.intellij.lua.search.SearchContext.withIndex(SearchContext.kt:102)
at com.tang.intellij.lua.psi.LuaPsiImplUtilKt.guessTypeAt(LuaPsiImplUtil.kt:255)
at com.tang.intellij.lua.psi.impl.LuaExprListImpl.guessTypeAt(LuaExprListImpl.java:51)
at com.tang.intellij.lua.ty.DeclarationsKt$infer$1.invoke(Declarations.kt:139)
at com.tang.intellij.lua.ty.DeclarationsKt$infer$1.invoke(Declarations.kt:138)
at com.tang.intellij.lua.search.SearchContext.withIndex(SearchContext.kt:102)
at com.tang.intellij.lua.ty.DeclarationsKt.infer(Declarations.kt:138)
at com.tang.intellij.lua.ty.DeclarationsKt.inferInner(Declarations.kt:44)
at com.tang.intellij.lua.ty.LuaTypeInfer.inferType(LuaTypeInfer.kt:25)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.inferImpl(ILuaTypeInfer.kt:41)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.infer(ILuaTypeInfer.kt:35)
at com.tang.intellij.lua.search.SearchContext.inferAndCache(SearchContext.kt:151)
at com.tang.intellij.lua.search.SearchContext.access$inferAndCache(SearchContext.kt:34)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion.with(SearchContext.kt:62)
at com.tang.intellij.lua.search.SearchContext$Companion.infer(SearchContext.kt:57)
at com.tang.intellij.lua.psi.LuaTypeGuessable.guessType(LuaTypeGuessable.java:29)
at com.tang.intellij.lua.ty.ExpressionsKt.inferExpr(Expressions.kt:40)
at com.tang.intellij.lua.ty.DeclarationsKt.inferInner(Declarations.kt:42)
at com.tang.intellij.lua.ty.LuaTypeInfer.inferType(LuaTypeInfer.kt:25)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.inferImpl(ILuaTypeInfer.kt:41)
at com.tang.intellij.lua.ext.ILuaTypeInfer$Companion.infer(ILuaTypeInfer.kt:35)
at com.tang.intellij.lua.search.SearchContext.inferAndCache(SearchContext.kt:151)
at com.tang.intellij.lua.search.SearchContext.access$inferAndCache(SearchContext.kt:34)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion$infer$2.invoke(SearchContext.kt:57)
at com.tang.intellij.lua.search.SearchContext$Companion.with(SearchContext.kt:69)
at com.tang.intellij.lua.search.SearchContext$Companion.infer(SearchContext.kt:57)
at com.tang.intellij.lua.psi.LuaTypeGuessable.guessType(LuaTypeGuessable.java:29)
at com.tang.intellij.lua.index.GuessableIndexer.tryIndex(Indexer.kt:52)
at com.tang.intellij.lua.index.IndexTask.run(IndexManager.kt:291)
at com.tang.intellij.lua.index.IndexTask.run(IndexManager.kt:216)
at com.tang.intellij.lua.index.IndexManager.scanAllProject(IndexManager.kt:128)
at com.tang.intellij.lua.index.IndexManager.access$scanAllProject(IndexManager.kt:47)
at com.tang.intellij.lua.index.IndexManager$runScan$1.invoke(IndexManager.kt:109)
at com.tang.intellij.lua.index.IndexManager$runScan$1.invoke(IndexManager.kt:109)
at com.tang.intellij.lua.index.TaskQueue$runReadAction$task$1.run$lambda$0(TaskQueue.kt:51)
at com.tang.intellij.lua.index.TaskQueue$runReadAction$task$1$$Lambda$3131/0x0000000101a122b0.run(Unknown Source)
at com.intellij.openapi.project.DumbService.lambda$runReadActionInSmartMode$1(DumbService.java:156)
at com.intellij.openapi.project.DumbService$$Lambda$6870/0x0000000102c544b0.compute(Unknown Source)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:891)
at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:69)
at com.intellij.openapi.project.DumbService.runReadActionInSmartMode(DumbService.java:149)
at com.tang.intellij.lua.index.TaskQueue$runReadAction$task$1.run(TaskQueue.kt:50)
at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:429)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:114)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressAsynchronously$6(CoreProgressManager.java:480)
at com.intellij.openapi.progress.impl.CoreProgressManager$$Lambda$1669/0x0000000101218480.apply(Unknown Source)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:252)
at com.intellij.openapi.progress.impl.ProgressRunner$$Lambda$1672/0x000000010121a0e8.run(Unknown Source)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
at com.intellij.openapi.progress.impl.CoreProgressManager$$Lambda$1363/0x0000000100fb75e0.run(Unknown Source)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
at com.intellij.openapi.progress.impl.CoreProgressManager$$Lambda$1364/0x0000000100fb7ae0.compute(Unknown Source)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:252)
at com.intellij.openapi.progress.impl.ProgressRunner$$Lambda$1671/0x0000000101219c78.get(Unknown Source)
at java.base@17.0.6/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
at java.base@17.0.6/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base@17.0.6/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base@17.0.6/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base@17.0.6/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base@17.0.6/java.security.AccessController.executePrivileged(AccessController.java:776)
at java.base@17.0.6/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base@17.0.6/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base@17.0.6/java.lang.Thread.run(Thread.java:833)
Can you please try this version? https://github.com/EmmyLua/IntelliJ-EmmyLua/actions/runs/5206248623
I cannot install that version. I get an error saying "failed to load plugin descriptor from file"
I cannot install that version. I get an error saying "failed to load plugin descriptor from file"
You need to unzip it and you will see another zip file, use that file to install
This still freezes the IDE as soon as "Indexing dependencies" is done.
It however doesn't freeze indefinitely like it used to, but file browsing is extremely laggy, and it consumes a lot of RAM (IDE complains that 2048 Mb isn't enough anymore) It also still freezes after a while.
@Meivyn I can't reproduce the problem, So ... I wonder if your project is complicated? How many Lua files are there and how the size are they?
It's not really a project - I am simply loading the whole Interface/AddOns
folder from World of Warcraft. Those add-ons are written in Lua. I always did that without a problem until that update. But that implies that there are a lot of files, so I can't tell the size or how many of them though.
@Meivyn I don't have WOW installed, where I can get the whole addons folder? Can you pack and upload it for me to test ?
I always did that without a problem until that update Yes, I rewrote the
index system
, since theindex system
in previous version cannot work in IDEA231. I had to rewrite it.
Here it is: https://send.vis.ee/download/5a3bb95c9f5110f6/#87S-grQ_dqoljGGr6-rbvQ
Thanks
Hmm, no clue what that error means, I am not understanding this language. What about this one? https://wormhole.app/4zyjp#mt4Ty_GWKYvwko_UeOUd4A
@Meivyn It's my problem, finally I downloaded it, thanks , I'll try it
It's a bit better. It doesn't lock up the UI nearly as much, though it takes 2-3min to finish it's analysis every single time I open my projects. It appears like it's having to analyze over 100k items according to the new loading status. Almost all of the things it is "analyzing" are the API files added to the project as external libraries. It seems odd that it has to do it every single time. Prior to 1.4.x it would open in just a few seconds.
I have the exact same situation as @Meivyn. We are both loading the whole Interface codebase from World of Warcraft. I have it added as a project SDK. It's quite a bit of files: https://github.com/Gethe/wow-ui-source
Would it be possible to implement some sort of caching system for between sessions? I.e. the 100,000+ objects needing scanned in the World of Warcraft API aren't changing that often, and therefore it seems wasteful to scan them over and over again on each launch. Likewise, even when they are changed, it's really just a subset of them. If the session somehow knew which files had or had not been changed from one session to the next, and could use that information to inform the indexer, that could considerably speed things up.
@tangzx I can confirm your rollback update today returned the previous behavior. Thank you for doing that.
I'm super excited for your hard work on the new indexer, and I'm hoping the above issue can be resolved without too much headache! Let me know if I can help in any way.
I am getting an infinite indexing loop with the latest version. It starts to index the module, and then the SDK, and then the module, and then the SDK, and then the module...
It even does this for non-Lua projects after installing this version.
@Meivyn Just a thought, have you tried invalidating your caches and restarting the IDE? I'm not able to replicate your issue on my end.
Yeah, I did, and that didn't help. It was fixed when I reverted back to 1.3.20.
In case it helps, I am also getting this exception:
com.intellij.diagnostic.PluginException: encoded string (
local B..., },
})
) too long: 493211 bytes [Plugin: com.tang]
at com.intellij.util.indexing.impl.storage.VfsAwareMapReduceIndex.lambda$getSerializationProblemReporter$6(VfsAwareMapReduceIndex.java:353)
at com.intellij.util.indexing.impl.ValueSerializationChecker.checkValueSerialization(ValueSerializationChecker.java:36)
at com.intellij.util.indexing.impl.MapReduceIndex.mapInput(MapReduceIndex.java:299)
at com.intellij.util.indexing.impl.storage.VfsAwareMapReduceIndex.mapInput(VfsAwareMapReduceIndex.java:172)
at com.intellij.util.indexing.impl.storage.VfsAwareMapReduceIndex.mapInput(VfsAwareMapReduceIndex.java:39)
at com.intellij.util.indexing.impl.MapReduceIndex.mapInputAndPrepareUpdate(MapReduceIndex.java:242)
at com.intellij.indexing.composite.CompositeInvertedIndexBase.updateBaseIndex(CompositeInvertedIndexBase.java:294)
at com.intellij.indexing.composite.CompositeInvertedIndexBase.mapInputAndPrepareUpdate(CompositeInvertedIndexBase.java:64)
at com.intellij.indexing.composite.CompositeInvertedIndexBase.mapInputAndPrepareUpdate(CompositeInvertedIndexBase.java:30)
at com.intellij.util.indexing.FileBasedIndexImpl.createSingleIndexValueApplier(FileBasedIndexImpl.java:1681)
at com.intellij.util.indexing.FileBasedIndexImpl.lambda$doIndexFileContent$26(FileBasedIndexImpl.java:1546)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.freezeFileTypeTemporarilyWithProvidedValueIn(FileTypeManagerImpl.java:675)
at com.intellij.util.indexing.FileBasedIndexImpl.doIndexFileContent(FileBasedIndexImpl.java:1494)
at com.intellij.util.indexing.FileBasedIndexImpl.indexFileContent(FileBasedIndexImpl.java:1467)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.lambda$indexOneFileOfJob$4(IndexUpdateRunner.java:317)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor.callWrapped(NonBlockingReadActionImpl.java:746)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor$MonitoredComputation.call(NonBlockingReadActionImpl.java:778)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:573)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$3(NonBlockingReadActionImpl.java:537)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1102)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:72)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:129)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:110)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$1(ProgressManager.java:70)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:70)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:107)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:72)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:537)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.executeSynchronously(NonBlockingReadActionImpl.java:464)
at com.intellij.openapi.application.impl.NonBlockingReadActionImpl.executeSynchronously(NonBlockingReadActionImpl.java:218)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.indexOneFileOfJob(IndexUpdateRunner.java:321)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.lambda$indexJobsFairly$3(IndexUpdateRunner.java:243)
at com.intellij.openapi.progress.impl.ProgressSuspender.executeNonSuspendableSection(ProgressSuspender.java:80)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.indexJobsFairly(IndexUpdateRunner.java:246)
at com.intellij.util.indexing.contentQueue.IndexUpdateRunner.lambda$doIndexFiles$2(IndexUpdateRunner.java:177)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:248)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:28)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:221)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:227)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:210)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.io.UTFDataFormatException: encoded string (
local B..., },
})
) too long: 493211 bytes
at java.base/java.io.DataOutputStream.writeUTF(DataOutputStream.java:369)
at java.base/java.io.DataOutputStream.writeUTF(DataOutputStream.java:333)
at com.tang.intellij.lua.stubs.index.LuaStringArgIndex$getValueExternalizer$1.save(LuaStringArgIndex.kt:50)
at com.tang.intellij.lua.stubs.index.LuaStringArgIndex$getValueExternalizer$1.save(LuaStringArgIndex.kt:45)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeToByteSeq(AbstractForwardIndexAccessor.java:81)
at com.intellij.util.indexing.impl.forward.AbstractForwardIndexAccessor.serializeValueToByteSeq(AbstractForwardIndexAccessor.java:69)
at com.intellij.util.indexing.impl.ValueSerializationChecker.getValueSerializationProblem(ValueSerializationChecker.java:49)
at com.intellij.util.indexing.impl.ValueSerializationChecker.checkValueSerialization(ValueSerializationChecker.java:34)
... 53 more
@tangzx Would appreciate it if you could look at it/send some news since 2023.2 is now officially out.
This exception is indeed the cause of the issue. It happens with this addon: https://www.curseforge.com/wow/addons/btwquests-dragonflight
Excluding the Database
folder from the sources did solve the issue.
Since the latest round of updates, launching IntelliJ takes a very long time, with the IDE sitting at "Lua indexing: waiting to start ..." and then "Scanning files to index", both taking a couple of minutes to complete. Likewise, while this is happening, it's using >15% of my CPU.
This is with version 1.4.2, but it was also present in the prior version.