IOException during analysis

140 views
Skip to first unread message

Tibor Blenessy

unread,
Jun 20, 2016, 9:26:17 AM6/20/16
to SonarQube
Hello,

I get IOException when trying to run analysis from ant task (stacktrace below), it seems that Cache subsystem (Persistit) is not initialized properly. By debugging I discovered that it's trying to create temporary file in a directory which doesn't exists. Looks like temporary folder in org.sonar.batch.index.Caches#Caches is not created?

I am using sonarqube-ant-task 2.4.1 . Let me know if you need further info.

Thanks

Kind regards

Tibor Blenessy

 java.lang.IllegalStateException: Fail to put element in the cache measures
        at org.sonar.batch.index.Cache.doPut(Cache.java:76)
        at org.sonar.batch.index.Cache.put(Cache.java:62)
        at org.sonar.batch.scan.measure.MeasureCache.put(MeasureCache.java:67)
        at org.sonar.batch.sensor.DefaultSensorStorage.saveMeasure(DefaultSensorStorage.java:147)
        at org.sonar.batch.index.DefaultIndex.addMeasure(DefaultIndex.java:174)
        at org.sonar.batch.deprecated.DeprecatedSensorContext.saveMeasure(DeprecatedSensorContext.java:171)
        at org.sonar.batch.deprecated.DeprecatedSensorContext.saveMeasure(DeprecatedSensorContext.java:199)
        at org.sonar.plugins.cxx.squid.CxxSquidSensor.saveMeasures(CxxSquidSensor.java:206)
        at org.sonar.plugins.cxx.squid.CxxSquidSensor.save(CxxSquidSensor.java:186)
        at org.sonar.plugins.cxx.squid.CxxSquidSensor.analyse(CxxSquidSensor.java:138)
        at org.sonar.batch.phases.SensorsExecutor.executeSensor(SensorsExecutor.java:58)
        at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:50)
        at org.sonar.batch.phases.PhaseExecutor.execute(PhaseExecutor.java:98)
        at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:185)
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:132)
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:117)
        at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:243)
        at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:238)
        at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:236)
        at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:228)
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:132)
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:117)
        at org.sonar.batch.task.ScanTask.execute(ScanTask.java:55)
        at org.sonar.batch.task.TaskContainer.doAfterStart(TaskContainer.java:86)
        at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:132)
        at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:117)
        at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:122)
        at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:119)
        at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:62)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
        at com.sun.proxy.$Proxy0.execute(Unknown Source)
        at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:240)
        at org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151)
        at org.sonarsource.scanner.ant.SonarQubeTask.launchAnalysis(SonarQubeTask.java:71)
        at org.sonarsource.scanner.ant.SonarQubeTask.execute(SonarQubeTask.java:54)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
        at org.apache.tools.ant.Task.perform(Task.java:348)
        at org.apache.tools.ant.Target.execute(Target.java:435)
        at org.apache.tools.ant.Target.performTasks(Target.java:456)
        at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)
        at org.apache.tools.ant.Project.executeTarget(Project.java:1376)
        at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1260)
        at org.apache.tools.ant.Main.runBuild(Main.java:853)
        at org.apache.tools.ant.Main.startAnt(Main.java:235)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:285)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:112)
Caused by: com.persistit.exception.PersistitIOException: java.io.IOException: No such file or directory
        at com.persistit.VolumeStorageT2.getChannel(VolumeStorageT2.java:104)
        at com.persistit.VolumeStorageT2.writePage(VolumeStorageT2.java:333)
        at com.persistit.VolumeStorageT2.writePage(VolumeStorageT2.java:315)
        at com.persistit.Buffer.writePage(Buffer.java:531)
        at com.persistit.BufferPool.allocBuffer(BufferPool.java:1030)
        at com.persistit.BufferPool.get(BufferPool.java:778)
        at com.persistit.BufferPool.get(BufferPool.java:716)
        at com.persistit.VolumeStructure.allocPage(VolumeStructure.java:513)
        at com.persistit.Exchange.putLevel(Exchange.java:1891)
        at com.persistit.Exchange.storeInternal(Exchange.java:1638)
        at com.persistit.Exchange.store(Exchange.java:1364)
        at com.persistit.Exchange.store(Exchange.java:2748)
        at org.sonar.batch.index.Cache.doPut(Cache.java:73)
        ... 55 more
Caused by: java.io.IOException: No such file or directory
        at java.io.UnixFileSystem.createFileExclusively(Native Method)
        at java.io.File.createNewFile(File.java:1006)
        at java.io.File.createTempFile(File.java:1989)
        at com.persistit.VolumeStorageT2.getChannel(VolumeStorageT2.java:99)
        ... 67 more


Tibor Blenessy

unread,
Jun 26, 2016, 1:41:14 PM6/26/16
to SonarQube
Hello,

can somebody provide an insight on the issue? It seems that it is system depended, it doesn't happen on Windows machines, only on Linux (RHEL 6.4) . I found people with similar issues on SO 

but with no solution.

Thanks
Reply all
Reply to author
Forward
0 new messages