I suddenly started getting the Start pointer should be before end pointer error message in my latest PR, from the Sonar Scanner for .NET/msbuild.
Looking online, I saw other instances of this error in the past due to specific language keywords; so I removed all code from my PR, watched the build/scan succeed, and then added pieces of my code back into the PR one by one until I narrowed down the culprit: it appears to be the new extension keyword added in .NET 10. Adding that code into my PR reliably causes the SonarScanner to fail with these details:
...
INFO: Sensor C# [strykernet]
INFO: Importing results from 6 proto files in '/home/runner/work/<project>/<project>/.sonarqube/out/6/output-cs'
INFO: Importing results from 6 proto files in '/home/runner/work/<project>/<project>/.sonarqube/out/5/output-cs'
INFO: Importing results from 6 proto files in '/home/runner/work/<project>/<project>/.sonarqube/out/1/output-cs'
INFO: Importing results from 6 proto files in '/home/runner/work/<project>/<project>/.sonarqube/out/3/output-cs'
INFO: Importing results from 6 proto files in '/home/runner/work/<project>/<project>/.sonarqube/out/2/output-cs'
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 14.937s
INFO: Final Memory: 41M/154M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarScanner execution
java.lang.IllegalArgumentException: Start pointer [line=1, lineOffset=0] should be before end pointer [line=1, lineOffset=0]
at org.sonar.api.utils.Preconditions.checkArgument(Preconditions.java:43)
at org.sonar.api.batch.fs.internal.DefaultInputFile.newRangeValidPointers(DefaultInputFile.java:383)
at org.sonar.api.batch.fs.internal.DefaultInputFile.newRange(DefaultInputFile.java:324)
at org.sonarsource.dotnet.shared.plugins.SensorContextUtils.toTextRange(SensorContextUtils.java:60)
at org.sonarsource.dotnet.shared.plugins.protobuf.SymbolRefsImporter.save(SymbolRefsImporter.java:64)
at org.sonarsource.dotnet.shared.plugins.ProtobufDataImporter.importResults(ProtobufDataImporter.java:83)
at org.sonarsource.dotnet.shared.plugins.DotNetSensor.importResults(DotNetSensor.java:101)
at org.sonarsource.dotnet.shared.plugins.DotNetSensor.execute(DotNetSensor.java:81)
at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:64)
at org.sonar.scanner.sensor.ProjectSensorsExecutor.execute(ProjectSensorsExecutor.java:52)
at org.sonar.scanner.scan.SpringProjectScanContainer.doAfterStart(SpringProjectScanContainer.java:371)
at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:188)
at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:167)
at org.sonar.scanner.bootstrap.SpringGlobalContainer.doAfterStart(SpringGlobalContainer.java:137)
at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:188)
at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:167)
at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:71)
at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:65)
at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
at jdk.proxy1/jdk.proxy1.$Proxy0.execute(Unknown Source)
at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)
at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)
at org.sonarsource.scanner.cli.Main.execute(Main.java:123)
at org.sonarsource.scanner.cli.Main.execute(Main.java:78)
at org.sonarsource.scanner.cli.Main.main(Main.java:59)
ERROR:
The SonarScanner did not complete successfully
23:57:42.358 Post-processing failed. Exit code: 1
Error: Process completed with exit code 1.
Can anyone help me confirm this theory? I couldn’t find anything about it on the forum, is it a known issue? If so, is there a timeframe on how long it might take to address it? This is a complete blocker for my project.
Additional info:
- Build runner OS: Ubuntu 22.04.5 (LTS)
- JDK: Temurin Hotspot 17.0.18-8/x64
- SonarScanner version: .NET 11.2
- Pre-installed on runner, been working for years. As mentioned above, it worked until the
extensioncode is added in my PR.
- Pre-installed on runner, been working for years. As mentioned above, it worked until the