I'm running into a stack overflow error during a sonar scanner analysis
for a project that worked fine with Sonarqube version 5.1.2 and Java
plugin version 3.5. I'm obviously trying to uprade to the latest
versions, which are Sonarqube 5.6.4 and Java plugin 4.4.0.8066.
I can't disclose the source code that triggers the
stack overflow. I will try to run a unit test with that source code in
the Java plugin by cloning the project, but I currently fail with build
issues. The usual stuff - stacking up one problem on top of the previous
one, I hope I don't run into a stack overflow myself ;-) - anyway,
that's another story and i will create aseparate message/issue for that.
But maybe somebody out there has seen this one already. Here's the exception stack trace:
INFO: Sensor JavaSquidSensor
INFO: Configured Java source version (sonar.java.source): none
INFO: JavaClasspath initialization
WARN:
Bytecode of dependencies was not provided for analysis of source files,
you might end up with less precise results. Bytecode can
be provided using sonar.java.libraries property
INFO: JavaClasspath initialization (done) | time=0ms
INFO: JavaTestClasspath initialization
INFO: JavaTestClasspath initialization (done) | time=0ms
INFO: Java Main Files AST scan
INFO: 492 source files to be analyzed
INFO: 105/492 files analyzed, current file: ...\BasicLossContainerCreator.java
ERROR: A stack overflow error occured while analyzing file:
...\BreakdownParser.java
Exception in thread "main"
java.lang.StackOverflowError
at java.util.stream.ReduceOps$3ReducingSink.begin(Unknown Source)
at java.util.stream.Sink$ChainedReference.begin(Unknown Source)
at java.util.stream.ReferencePipeline$2$1.begin(Unknown Source)
at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
at java.util.stream.ReferencePipeline.collect(Unknown Source)
at org.sonar.java.se.checks.FlowComputation.flowFromLearnedConstraints(FlowComputation.java:114)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:100)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
at org.sonar.java.se.checks.FlowComputation.run(FlowComputation.java:106)
and so on.