eclipse-jdt / eclipse-jdt/eclipse.jdt.core

StackOverflowError on resolving static import

Open
#1,081 42 comments 0 reactions 1 assignee Claimed by @trancexpress View on GitHub
bug
Dominant language
Java
Stars
237
Forks
195
Avg merge
1d 12h
Merged PRs (30d)
47

Description

Started having this issue right after my ubuntu 22.04.2 LTS system did a software update.

Having a single editor open, is fine, but the moment a second editor is open on any file, it immediately starts gobling up memory (as per HEAP monitor in the window) until it hits 2048MB and eventually throws an OOM exception.

I have tried the following:

1) Reinstalled a new instance of Eclipse (for Java) 2023-3.
2) Removed .metadata directory from workspace root and started from scratch
3) Started eclipse with -clean option and from a terminal window to see any additional output

Nothing has worked, even if I restart the workbench but with 2 editors open, it immediatly starts consuming all memory. Obviously a runaway recursive loop.

Thank you for your help.
mark....

---- logs and info ----

Starship:~/eclipse-workspace/jnet> lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.2 LTS
Release: 22.04
Codename: jammy

Starship:~/eclipse-workspace/jnet> java -version
java version "19" 2022-09-20
Java(TM) SE Runtime Environment (build 19+36-2238)
Java HotSpot(TM) 64-Bit Server VM (build 19+36-2238, mixed mode, sharing)

Starship:~/eclipse/java-2023-03/eclipse> more eclipse.ini
-startup
plugins/org.ecli
[.log.zip](https://github.com/eclipse-jdt/eclipse.jdt.core/files/11533500/default.log.zip)
pse.equinox.launcher_1.6.400.v20210924-0641.jar
--launcher.library
/home/mark/.p2/pool/plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.2.700.v20221108-1024
-product
org.eclipse.epp.package.java.product
-showsplash
/home/mark/.p2/pool/plugins/org.eclipse.epp.package.common_4.27.0.20230309-1200
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
/usr/lib/jvm/jdk-19/bin
-vmargs
-Dosgi.requiredJavaVersion=17
-[Dosgi.instance.area.default=@user.home](mailto:Dosgi.instance.area.default=@user.home)/eclipse-workspace
-Dosgi.dataAreaRequiresExplicitInit=true
-Dorg.eclipse.swt.graphics.Resource.reportNonDisposed=true
-Dsun.java.command=Eclipse
-Xms256m
-Xmx2048m
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
[Eclipse-2022-04-workspace-metadata.log](https://github.com/eclipse-jdt/eclipse.jdt.core/files/11533509/Eclipse-2022-04-workspace-metadata.log)

-Declipse.p2.max.threads=10
-Doomph.update.url=https://download.eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/

!SESSION 2023-05-22 11:19:48.156 -----------------------------------------------
eclipse.buildId=4.27.0.20230309-1200
java.version=19
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product -clean -consolelog

Exception in thread "Text Viewer Hover Presenter" java.lang.StackOverflowError
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:813)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:742)
at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:188)
at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:542)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.fromSplitPackageOrOracle(LookupEnvironment.java:427)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.lambda$1(LookupEnvironment.java:300)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForTypeFromModules(LookupEnvironment.java:394)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:299)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:276)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:578)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:289)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:256)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:588)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:141)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.accept(SelectionEngine.java:375)
at org.ecli
pse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:345)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:276)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:578)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:289)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:256)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:588)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:141)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.accept(SelectionEngine.java:375)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:345)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:276)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:578)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:289)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:256)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:588)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:141)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.accept(SelectionEngine.java:375)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:345)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:276)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:578)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:289)

[Eclipse-2022-04-workspace-metadata.log](https://github.com/eclipse-jdt/eclipse.jdt.core/files/11533516/Eclipse-2022-04-workspace-metadata.log)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.