Uploaded image for project: 'SonarQube'
  1. SonarQube
  2. SONAR-6000

Analysis fails when Persistit index requires more than 65Mo

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.5.4, 5.1
    • Component/s: Scanner
    • Labels:
      None

      Description

      When we reach Persistit size limitation the analysis fails:

      ERROR: Error during Sonar runner execution
      org.sonar.runner.impl.RunnerException: Unable to execute Sonar
             at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91)
             at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
             at java.security.AccessController.doPrivileged(Native Method)
             at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
             at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
             at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
             at org.sonar.runner.api.Runner.execute(Runner.java:100)
             at org.sonar.runner.Main.executeTask(Main.java:70)
             at org.sonar.runner.Main.execute(Main.java:59)
             at org.sonar.runner.Main.main(Main.java:53)
      Caused by: java.lang.IllegalStateException: Fail to put element in the cache duplications
             at org.sonar.batch.index.Cache.doPut(Cache.java:76)
             at org.sonar.batch.index.Cache.put(Cache.java:52)
             at org.sonar.batch.duplication.DuplicationCache.put(DuplicationCache.java:54)
             at org.sonar.batch.scan2.BaseSensorContext.saveDuplications(BaseSensorContext.java:129)
             at org.sonar.plugins.cpd.JavaCpdEngine.save(JavaCpdEngine.java:234)
             at org.sonar.plugins.cpd.DefaultCpdEngine.analyse(DefaultCpdEngine.java:138)
             at org.sonar.plugins.cpd.CpdSensor.execute(CpdSensor.java:87)
             at org.sonar.batch.scan.SensorWrapper.analyse(SensorWrapper.java:70)
             at org.sonar.batch.phases.SensorsExecutor.executeSensor(SensorsExecutor.java:79)
             at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:70)
             at org.sonar.batch.phases.PhaseExecutor.execute(PhaseExecutor.java:119)
             at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:194)
             at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
             at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
             at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:233)
             at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:228)
             at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:226)
             at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:221)
             at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
             at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
             at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:64)
             at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:51)
             at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:125)
             at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
             at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
             at org.sonar.batch.bootstrap.BootstrapContainer.executeTask(BootstrapContainer.java:173)
             at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95)
             at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67)
             at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:48)
             at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
             at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
             at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
             at java.lang.reflect.Method.invoke(Method.java:483)
             at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87)
             ... 9 more
      Caused by: com.persistit.exception.ConversionException: Requested size=67108865 exceeds maximum size=67108864
             at com.persistit.Value.ensureFit(Value.java:784)
             at com.persistit.Value.encodeVariableLengthInt(Value.java:4446)
             at com.persistit.Value.endVariableSizeItem(Value.java:4436)
             at com.persistit.Value.putCharSequenceInternal(Value.java:5449)
             at com.persistit.Value.putUTF(Value.java:3518)
             at org.sonar.batch.duplication.DuplicationBlockValueCoder.put(DuplicationBlockValueCoder.java:32)
             at org.sonar.batch.duplication.DuplicationGroupValueCoder.put(DuplicationGroupValueCoder.java:41)
             at com.persistit.Value.put(Value.java:3453)
             at com.persistit.encoding.CollectionValueCoder.put(CollectionValueCoder.java:126)
             at com.persistit.Value.put(Value.java:3453)
             at com.persistit.Value.put(Value.java:3255)
             at org.sonar.batch.index.Cache.doPut(Cache.java:72)
             ... 42 more
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              henryju OLD - Julien HENRY
              Reporter:
              jeandenis.coffre OLD - Jean-Denis Coffre
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Due:
                Created:
                Updated:
                Resolved: