Uploaded image for project: 'MongoDB for IntelliJ Plugin'
  1. MongoDB for IntelliJ Plugin
  2. INTELLIJ-103

Intellij plugin errors on mms DAOs

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 0.0.0
    • Affects Version/s: None
    • Component/s: None
    • Environment:
      OS: macOS
      Additional info: using th eplugin on the mms code base
    • Not Needed
    • Developer Tools

      Problem Statement/Rationale

      Doesn't seem to like the mms code base, intellija is erroring with stacktraces all around

      Steps to Reproduce

      1. Install the plugin
      2. Open an MMS DAO class like https://github.com/10gen/mms/blob/e3cb96c4d09df0e9a464040e023463a06419df57/server/src/main/com/xgen/cloud/services/authn/_private/dao/oauth/BaseAuthTokenDao.java#L55

      Expected Results

      Not seeing plugin errors

      Actual Results

      Plugin crash errors

      Additional Notes

       

      During querying provider com.mongodb.jbplugin.codeActions.impl.RunQueryCodeActionBridge@c3935c2 (class com.mongodb.jbplugin.codeActions.impl.RunQueryCodeActionBridge)java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
          at com.mongodb.jbplugin.dialects.javadriver.glossary.NamespaceExtractor.extractNamespaceFromDriverConfigurationMethodChain(NamespaceExtractor.kt:307)
          at com.mongodb.jbplugin.dialects.javadriver.glossary.NamespaceExtractor.extractNamespace(NamespaceExtractor.kt:114)
          at com.mongodb.jbplugin.dialects.javadriver.glossary.JavaDriverDialectParser.parse(JavaDriverDialectParser.kt:21)
          at com.mongodb.jbplugin.dialects.javadriver.glossary.JavaDriverDialectParser.parse(JavaDriverDialectParser.kt:14)
          at com.mongodb.jbplugin.editor.CachedQueryService.queryAt$lambda$1(CachedQueryService.kt:57)
          at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.kt:40)
          at com.intellij.util.CachedValueBase.lambda$getValueWithLock$3(CachedValueBase.java:236)
          at com.intellij.util.CachedValueBase.computeData(CachedValueBase.java:43)
          at com.intellij.util.CachedValueBase.lambda$getValueWithLock$4(CachedValueBase.java:236)
          at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
          at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:27)
          at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:66)
          at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:237)
          at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.kt:34)
          at com.mongodb.jbplugin.editor.CachedQueryService.queryAt(CachedQueryService.kt:62)
          at com.mongodb.jbplugin.codeActions.AbstractMongoDbCodeActionBridge.dispatchIfValidMongoDbQuery$lambda$2(AbstractMongoDbCodeActionBridge.kt:57)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runReadAction$lambda$3(AnyThreadWriteThreadingSupport.kt:219)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runReadAction(AnyThreadWriteThreadingSupport.kt:228)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runReadAction(AnyThreadWriteThreadingSupport.kt:219)
          at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:852)
          at com.mongodb.jbplugin.codeActions.AbstractMongoDbCodeActionBridge.dispatchIfValidMongoDbQuery(AbstractMongoDbCodeActionBridge.kt:50)
          at com.mongodb.jbplugin.codeActions.AbstractMongoDbCodeActionBridge.getLineMarkerInfo(AbstractMongoDbCodeActionBridge.kt:47)
          at com.intellij.codeInsight.daemon.impl.LineMarkersPass.queryProviders(LineMarkersPass.java:180)
          at com.intellij.codeInsight.daemon.impl.LineMarkersPass.lambda$doCollectMarkers$2(LineMarkersPass.java:108)
          at com.intellij.codeInsight.daemon.impl.Divider.divideInsideAndOutsideInOneRoot(Divider.java:97)
          at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectMarkers(LineMarkersPass.java:104)
          at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectInformation(LineMarkersPass.java:77)
          at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:67)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:431)
          at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.runWithSpanIgnoreThrows(trace.kt:118)
          at com.intellij.platform.diagnostic.telemetry.helpers.TraceUtil.runWithSpanThrows(TraceUtil.java:36)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$3(PassExecutorService.java:426)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.tryRunReadAction(AnyThreadWriteThreadingSupport.kt:279)
          at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:965)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$4(PassExecutorService.java:417)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:660)
          at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:684)
          at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:659)
          at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:79)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:416)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:392)
          at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.cacheFileTypesInside(FileTypeManagerImpl.java:802)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$1(PassExecutorService.java:392)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.executeByImpatientReader(AnyThreadWriteThreadingSupport.kt:486)
          at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:178)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:390)
          at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:259)
          at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
          at java.base/java.util.concurrent.ForkJoinPool.helpJoin(ForkJoinPool.java:2326)
          at java.base/java.util.concurrent.ForkJoinTask.awaitDone(ForkJoinTask.java:495)
          at java.base/java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1032)
          at com.intellij.concurrency.JobLauncherImpl.lambda$invokeConcurrentlyUnderProgressAsync$5(JobLauncherImpl.java:118)
          at com.intellij.concurrency.JobLauncherImpl.safeIterate(JobLauncherImpl.java:168)
          at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgressAsync(JobLauncherImpl.java:106)
          at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgress(JobLauncherImpl.java:48)
          at com.intellij.codeInsight.hints.InlayHintsPass.doCollectInformation(InlayHintsPass.kt:52)
          at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:67)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:431)
          at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.runWithSpanIgnoreThrows(trace.kt:118)
          at com.intellij.platform.diagnostic.telemetry.helpers.TraceUtil.runWithSpanThrows(TraceUtil.java:36)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$3(PassExecutorService.java:426)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.tryRunReadAction(AnyThreadWriteThreadingSupport.kt:291)
          at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:965)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$4(PassExecutorService.java:417)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:660)
          at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:735)
          at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:691)
          at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:659)
          at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:79)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:416)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:392)
          at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.cacheFileTypesInside(FileTypeManagerImpl.java:802)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$1(PassExecutorService.java:392)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.executeByImpatientReader(AnyThreadWriteThreadingSupport.kt:486)
          at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:178)
          at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:390)
          at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:259)
          at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
          at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1491)
          at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:2073)
          at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2035)
          at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)

       

            Assignee:
            kevin.mas@mongodb.com Kevin Mas Ruiz
            Reporter:
            gustavo.bazan@mongodb.com Gustavo Bazan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: