- Ubuntu 22.04
- SonarLint Eclipse plugin version: 22.214.171.124302
- Programming language: C
- Is connected mode used:
- Connected to SonarQube v10.3.0.82913 running locally with embedded database
The plugin seems to be analyzing successfully the code but I’m getting these errors in the console:
SonarLintConsoleErrors.txt (56.7 KB)
I’m not really sure if that is affecting the effectiveness of the analysis, although it seems good to me. I can see the 771 items in the SonarLint Report window.
Could someone please help me understand if these errors are “normal” and if I’m safe ignoring them or if they could cause any erroneous behavior that may affect the effectiveness/quality of the analysis?
We just released v 126.96.36.199411. Would you mind upgrading and seeing if this is still replicable, please?
Thanks for helping!
Updating the plugin doesn’t seem to help. I’m getting the same errors.
Thanks for trying. I’ve flagged this for team attention.
thank you very much for reaching out to us on that issue - and yes this is an actual issue. It comes from flows not being created correctly (e.g. issues that have not only one location but multiple).
All issues are reported correctly and you can see them but some of them won’t show you the whole truth without the flows available.
The first thing I noticed is, that we don’t log on which issue / file this error occurs (I’ll enhance this behavior for the next release, so debugging is easier).
In the meantime, could you please narrow down the file where the errors are coming from. I fear I need some more information whether it is an issue with SonarLint or the C analyzer itself.
@tobias.hahnen I’m not sure I understand your request.
The errors reported are found in a lot of files. I don’t think I can make those names public here.
Is that what you are asking?
from your initial request, it seems that you analyzed a lot of files in bulk and some of them produced issues.
For one of the exceptions thrown, could you narrow down the specific file and analyze it on its own?
This way the exception will be once again shown in the logs but the actual issue is still reported on the SonarLint On-the-fly view and in the editor itself.
This information is key if it is an actual issue with SonarLint or the C analyzer (or the rule itself contained inside the analyzer). If it is an issue with the C analyzer, I’m going to forward it to the language analyzer specialists.
If you don’t feel comfortable sharing such information publically, feel free to get in contact with a private message so we can discuss it further via this channel.
After some experimentation. I did two tests:
Right-clicked all my project files and ran SonarLint > Analyze on each one of them and I never saw the issue.
Opened all the project files one by one to make the On-The-Fly function kick in for each. I could see the On-The_fly analyzer getting triggered every time upon opening a file. It did that for each file until I opened one almost at the end of the test (about 75 files in) and then I saw the issue. I suddenly saw all those java errors and it reported 751 issues on the opened file which is not right since the file was a .h file and it doesn’t even have a 100 lines including comments.
I thought this was the file causing the issue so then I closed it, cleared the errors from the console view, and opened the same file again trying to reproduce the issue but this time nothing happened which leads me to believe that I just got lucky and there is really no repeatable way of reproducing this besides triggering a full project analysis.
Also, I wanted to mention that my project has only 92 files to analyze but the analysis says that it is analyzing 1783 files. Even accounting for the files in the excluded folders, the absolute total number of .c and .h files in my project is 899 so 1783 is way off!! Why is this?
So in summary, I can’t do what you are asking because the only way to see this is issue is triggering a complete project analysis by right-clicking on the name of the project then selecting SonarLint > Analyze.
I have new findings. I just realized there is a verbose mode to the SonarLint console. I enabled it and I got more details.
It turns out that it is not really analyzing 1,345 files. I got confused. It is really processing 1,345 files. I can see it forms an array of inputFiles with the files that will be actually analyzed.
This is the last part of the verbose output from the project analysis where you can see a bunch of
Skip downloading file issues on SonarQube 9.6+ when the error starts appearing:
verboseOutput.txt (65.1 KB)
Everything else before that looks good and there are no errors.
Did you used to see these errors before? or are they new?
The logs you shared are incomplete, would you mind sharing the full logs? I can send you a private message if you prefer to share them privately.
Also, the logs show that you are analyzing 92 C or C++ translation units in batch.
Header files aren’t analyzed separately in SonarLint for Eclipse, they are analyzed when you analyze the file that includes them. Do you reproduce the issue when you analyze one of the files that include the culprit header file and then open the header file?