I got something that will help to narrow down issue. From below stack trace I am not sure if issue with Clear Case or Sonarlint or the way my projects are organised in multilevel maven projects.
Unable to analyze changed files
java.lang.StackOverflowError
at org.eclipse.core.runtime.Path.<init>(Path.java:208)
at org.eclipse.core.internal.watson.ElementTreeIterator.requestPath(ElementTreeIterator.java:167)
at org.eclipse.core.internal.resources.ResourceProxy.requestFullPath(ResourceProxy.java:116)
at org.eclipse.core.internal.resources.ResourceProxy.requestResource(ResourceProxy.java:126)
at org.eclipse.core.internal.resources.Resource$2.visit(Resource.java:120)
at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:84)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:82)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:129)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:94)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:52)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:117)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:105)
at com.ibm.rational.clearcase.ide.plugin.CCSubscriber.members(CCSubscriber.java:100)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:144)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:145)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:145)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:145)
............................ same last line repeats......
I suspect, issue may be the way my maven projects are organised because when I analyzed another project at little higher level, I see below error message which shows that execution moved little further but memory give up :(
Unable to analyze changed files
java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.lang.String.substring(Unknown Source)
at org.eclipse.core.runtime.Path.computeSegments(Path.java:547)
at org.eclipse.core.runtime.Path.initialize(Path.java:669)
at org.eclipse.core.runtime.Path.<init>(Path.java:208)
at org.eclipse.core.internal.watson.ElementTreeIterator.requestPath(ElementTreeIterator.java:167)
at org.eclipse.core.internal.resources.ResourceProxy.requestFullPath(ResourceProxy.java:116)
at org.eclipse.core.internal.resources.ResourceProxy.requestResource(ResourceProxy.java:126)
at org.eclipse.core.internal.resources.Resource$2.visit(Resource.java:120)
at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:84)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:82)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:87)
at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:129)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:94)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:52)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:117)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:105)
at com.ibm.rational.clearcase.ide.plugin.CCSubscriber.members(CCSubscriber.java:100)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:144)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeChangedFilesJob.collect(AnalyzeChangedFilesJob.java:145)
For your information, I have around 60 projects which are organised in 3 level deep hierarchy and built by single root pom. Where root pom has some modules defined and there are sun modules e.g.
Root Project Pom
-- Module 1
-- Module 2
-- Sub Root Project pom 1
------ Module 3
------ Module 4
-- Sub Root Project pom 1
------ Module 5
------ Module 6
Root and Sub root project pom is just defining modules to be built as part of own build. Earlier I was trying to check on Module 4 which has Stackoverflow error. Now I checked with Module 1 which is causing Memory issue. I will see to resolve memory issue but meanwhile thanks to give some hint. One more point is there are modules which are built as part of Sub root project but physical directory is outside of sub root project directory.
PS: This may be not correct way to organize maven projects but it is legacy structure which I have already raised concern to change.
Regards,
Alpesh