When running SonarQube we get the following error.
Error Details
org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.lang.IllegalStateException: Failed to write to '/usr/ncte/sonarqube-7.5/temp/ce/1383194083182480438/3682543351976561243/hashes-14456'
### Cause: java.lang.IllegalStateException: Failed to write to '/usr/ncte/sonarqube-7.5/temp/ce/1383194083182480438/3682543351976561243/hashes-14456'
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.defaults.DefaultSqlSession.select(DefaultSqlSession.java:172)
at org.apache.ibatis.session.defaults.DefaultSqlSession.select(DefaultSqlSession.java:158)
at org.apache.ibatis.binding.MapperMethod.executeWithResultHandler(MapperMethod.java:128)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:73)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
at com.sun.proxy.$Proxy54.scrollLineHashes(Unknown Source)
at org.sonar.db.source.FileSourceDao.scrollLineHashes(FileSourceDao.java:93)
at org.sonar.ce.task.projectanalysis.filemove.FileMoveDetectionStep.computeScoreMatrix(FileMoveDetectionStep.java:270)
at org.sonar.ce.task.projectanalysis.filemove.FileMoveDetectionStep.execute(FileMoveDetectionStep.java:141)
at org.sonar.ce.task.step.ComputationStepExecutor.executeStep(ComputationStepExecutor.java:77)
at org.sonar.ce.task.step.ComputationStepExecutor.executeSteps(ComputationStepExecutor.java:69)
at org.sonar.ce.task.step.ComputationStepExecutor.execute(ComputationStepExecutor.java:56)
at org.sonar.ce.task.projectanalysis.taskprocessor.ReportTaskProcessor.process(ReportTaskProcessor.java:81)
at org.sonar.ce.taskprocessor.CeWorkerImpl.executeTask(CeWorkerImpl.java:137)
at org.sonar.ce.taskprocessor.CeWorkerImpl.findAndProcessTask(CeWorkerImpl.java:100)
at org.sonar.ce.taskprocessor.CeWorkerImpl.withCustomizedThreadName(CeWorkerImpl.java:84)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:76)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:46)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: Failed to write to '/usr/ncte/sonarqube-7.5/temp/ce/1383194083182480438/3682543351976561243/hashes-14456'
at org.sonar.ce.task.projectanalysis.source.SourceLinesHashCache.save(SourceLinesHashCache.java:78)
at org.sonar.ce.task.projectanalysis.source.SourceLinesHashCache.computeIfAbsent(SourceLinesHashCache.java:50)
at org.sonar.ce.task.projectanalysis.source.SourceLinesHashRepositoryImpl.getLineHashesMatchingDBVersion(SourceLinesHashRepositoryImpl.java:47)
at org.sonar.ce.task.projectanalysis.filemove.FileMoveDetectionStep.getReportFileLineHashes(FileMoveDetectionStep.java:236)
at org.sonar.ce.task.projectanalysis.filemove.FileMoveDetectionStep.lambda$getReportFileSourcesByKey$2(FileMoveDetectionStep.java:228)
at org.sonar.ce.task.projectanalysis.filemove.FileSimilarity$LazyFileImpl.ensureSupplierCalled(FileSimilarity.java:94)
at org.sonar.ce.task.projectanalysis.filemove.FileSimilarity$LazyFileImpl.getLineHashes(FileSimilarity.java:88)
at org.sonar.ce.task.projectanalysis.filemove.FileSimilarityImpl.score(FileSimilarityImpl.java:36)
at org.sonar.ce.task.projectanalysis.filemove.FileMoveDetectionStep$LineHashesWithKeyDtoResultHandler.handleResult(FileMoveDetectionStep.java:316)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.callResultHandler(DefaultResultSetHandler.java:371)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.storeObject(DefaultResultSetHandler.java:364)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:356)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValues(DefaultResultSetHandler.java:330)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSet(DefaultResultSetHandler.java:306)
at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSets(DefaultResultSetHandler.java:196)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at org.apache.ibatis.executor.ReuseExecutor.doQuery(ReuseExecutor.java:60)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
at org.apache.ibatis.session.defaults.DefaultSqlSession.select(DefaultSqlSession.java:170)
... 25 more
Caused by: java.nio.file.FileSystemException: /usr/ncte/sonarqube-7.5/temp/ce/1383194083182480438/3682543351976561243/hashes-14456: Too many open files
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:434)
at java.nio.file.Files.newOutputStream(Files.java:216)
at java.nio.file.Files.write(Files.java:3351)
at org.sonar.ce.task.projectanalysis.source.SourceLinesHashCache.save(SourceLinesHashCache.java:76)
... 47 more
FYI, we’ve noticed the the temp/ce directory is filling up fast.