spotbugs / sonar-findbugs

SpotBugs plugin for SonarQube
348 stars 134 forks source link

Java project Findbugs execute timeout #291

Open HarveyHuiZhang opened 4 years ago

HarveyHuiZhang commented 4 years ago

Issue Description

There exist one Java project, and line of java code is around 19066. On previous time scan the findbugs time out is set around 2 hours, and execution failed. And next time scan findbugs timeout already set as 36000000ms, but also still failed.

Console output from timeout set as 2 hours

2019-09-12 15:23:01 ScannerTrigger.java INFO 15:23:01.649 DEBUG: starting eslint-bridge server at port 59268 2019-09-12 15:23:01 ScannerTrigger.java INFO 15:23:01.939 DEBUG: eslint-bridge server is running at port 59268 2019-09-12 15:23:02 ScannerTrigger.java INFO 15:23:02.101 DEBUG: Server is started 2019-09-12 15:23:02 ScannerTrigger.java INFO 15:23:02.102 INFO: 2 source files to be analyzed 2019-09-12 15:23:02 ScannerTrigger.java INFO 15:23:02.908 INFO: Sensor ESLint-based SonarJS [javascript] (done) | time=100880ms 2019-09-12 15:23:02 ScannerTrigger.java INFO 15:23:02.908 INFO: Sensor FindBugs Sensor [findbugs] 2019-09-12 15:23:02 ScannerTrigger.java INFO 15:23:02.908 INFO: 2/2 source files have been analyzed 2019-09-12 15:23:09 ScannerTrigger.java INFO 15:23:09.832 INFO: Loading findbugs plugin: C:\Users\project.scannerwork\findbugs\findsecbugs-plugin.jar 2019-09-12 15:23:09 ScannerTrigger.java INFO 15:23:09.903 INFO: Findbugs output report: C:\Users\project.scannerwork\findbugs-result.xml 2019-09-12 17:03:56 ScannerTrigger.java INFO 17:03:56.272 INFO: ------------------------------------------------------------------------ 2019-09-12 17:03:56 ScannerTrigger.java INFO 17:03:56.274 INFO: EXECUTION FAILURE 2019-09-12 17:03:56 ScannerTrigger.java INFO 17:03:56.274 INFO: ------------------------------------------------------------------------ 2019-09-12 17:03:56 ScannerTrigger.java INFO 17:03:56.277 INFO: Total time: 2:02:15.244s 2019-09-12 17:03:58 ScannerTrigger.java INFO 17:03:58.537 INFO: Final Memory: 55M/740M 2019-09-12 17:03:58 ScannerTrigger.java INFO 17:03:58.537 INFO: ------------------------------------------------------------------------

Environment

Windows 10, The versions used: SonarQube 7.4, Sonar-FindBugs 3.9.1, Maven 3.5.X, Java 8

HarveyHuiZhang commented 4 years ago

Before findbugs execution, there exist some exception. I'm not sure whether it can be impact findbugs check, below is exception log:

INFO 15:17:40.762 DEBUG: 'backend/src/main/java/***/services/impl/SurveyQuestionsServiceImpl.java' generated metadata with charset 'windows-1252' DEBUG: Could not complete symbolic execution: org.sonar.java.se.ExplodedGraphWalker$MaximumStepsReachedException: reached limit of 16000 steps for method buildIndustriesTree#156 in class SurveyQuestionsServiceImpl at org.sonar.java.se.ExplodedGraphWalker.throwMaxSteps(ExplodedGraphWalker.java:297) at org.sonar.java.se.ExplodedGraphWalker.execute(ExplodedGraphWalker.java:236) at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:209) at org.sonar.java.se.SymbolicExecutionVisitor.execute(SymbolicExecutionVisitor.java:74) at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:146) at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:129) at org.sonar.java.se.ExplodedGraphWalker.executeMethodInvocation(ExplodedGraphWalker.java:668) at org.sonar.java.se.ExplodedGraphWalker.visit(ExplodedGraphWalker.java:540) at org.sonar.java.se.ExplodedGraphWalker.execute(ExplodedGraphWalker.java:249) at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:209) at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:201) at org.sonar.java.se.SymbolicExecutionVisitor.execute(SymbolicExecutionVisitor.java:78) at org.sonar.java.se.SymbolicExecutionVisitor.visitNode(SymbolicExecutionVisitor.java:64) at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:103) at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128) at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105) at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128) at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105) at org.sonar.java.ast.visitors.SubscriptionVisitor.scanTree(SubscriptionVisitor.java:86) at org.sonar.java.ast.visitors.SubscriptionVisitor.scanFile(SubscriptionVisitor.java:72) at org.sonar.java.se.SymbolicExecutionVisitor.scanFile(SymbolicExecutionVisitor.java:54) at org.sonar.java.model.VisitorsBridge.runScanner(VisitorsBridge.java:148) at org.sonar.java.model.VisitorsBridge.visitFile(VisitorsBridge.java:136) at org.sonar.java.ast.JavaAstScanner.simpleScan(JavaAstScanner.java:96) at org.sonar.java.ast.JavaAstScanner.scan(JavaAstScanner.java:68) at org.sonar.java.JavaSquid.scanSources(JavaSquid.java:116) at org.sonar.java.JavaSquid.scan(JavaSquid.java:110) at org.sonar.plugins.java.JavaSquidSensor.execute(JavaSquidSensor.java:93) at org.sonar.scanner.sensor.SensorWrapper.analyse(SensorWrapper.java:45) at org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java:88) at org.sonar.scanner.phases.SensorsExecutor.execute(SensorsExecutor.java:62) at org.sonar.scanner.phases.AbstractPhaseExecutor.execute(AbstractPhaseExecutor.java:74) at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:164) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:319) at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:314) at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:288) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.scanner.task.ScanTask.execute(ScanTask.java:48) at org.sonar.scanner.task.TaskContainer.doAfterStart(TaskContainer.java:82) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.scanner.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:131) at org.sonar.batch.bootstrapper.Batch.doExecuteTask(Batch.java:116) at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:71) at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46) 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:498) 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:171) at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:128) at org.sonarsource.scanner.cli.Main.execute(Main.java:111) at org.sonarsource.scanner.cli.Main.execute(Main.java:75) at org.sonarsource.scanner.cli.Main.main(Main.java:61)

INFO 15:17:43.006 DEBUG: 'backend/src/main/java//services/impl/UserManagementServiceImpl.java' generated metadata with charset 'windows-1252' INFO 15:17:44.756 DEBUG: 'backend/src/main/java//util/AzureStorageUtil.java' generated metadata with charset 'windows-1252'