Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 575791

Summary: [model] NPE in HashtableOfObjectToInt.java:75
Product: [Eclipse Project] JDT Reporter: Aurelien Pupier <apupier>
Component: CoreAssignee: Jörg Kubitz <jkubitz-eclipse>
Status: CLOSED WONTFIX QA Contact: Jay Arthanareeswaran <jarthana>
Severity: normal    
Priority: P3 CC: jarthana, jkubitz-eclipse, manoj.palat
Version: 4.20   
Target Milestone: 4.24 M1   
Hardware: PC   
OS: Linux   
See Also: https://git.eclipse.org/r/c/jdt/eclipse.jdt.core/+/185058
Whiteboard:

Description Aurelien Pupier CLA 2021-09-02 20:00:59 EDT
java.lang.NullPointerException
 	at org.eclipse.jdt.internal.compiler.util.HashtableOfObjectToInt.get(HashtableOfObjectToInt.java:75)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.saveNewId(JavaModelManager.java:4581)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.saveClasspathEntry(JavaModelManager.java:4535)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.saveClasspathEntries(JavaModelManager.java:4530)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.saveContainers(JavaModelManager.java:4572)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.saveProjects(JavaModelManager.java:4636)
 	at org.eclipse.jdt.internal.core.JavaModelManager$VariablesAndContainersSaveHelper.save(JavaModelManager.java:4477)
 	at org.eclipse.jdt.internal.core.JavaModelManager.saveVariablesAndContainers(JavaModelManager.java:4448)
 	at org.eclipse.jdt.internal.core.JavaModelManager.saving(JavaModelManager.java:4680)
 	at org.eclipse.core.internal.resources.SaveManager.executeLifecycle(SaveManager.java:387)
 	at org.eclipse.core.internal.resources.SaveManager$1.run(SaveManager.java:204)
 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
 	at org.eclipse.core.internal.resources.SaveManager.broadcastLifecycle(SaveManager.java:207)
 	at org.eclipse.core.internal.resources.SaveManager.save(SaveManager.java:1164)
 	at org.eclipse.core.internal.resources.SaveManager.save(SaveManager.java:1143)
 	at org.eclipse.core.internal.resources.DelayedSnapshotJob.run(DelayedSnapshotJob.java:55)
 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)


I do not know how to reproduce. it appears in log of my tests on this PR https://github.com/MoreUnit/MoreUnit-Eclipse/pull/109/checks?check_run_id=3501233002
Comment 1 Jörg Kubitz CLA 2021-09-06 13:01:37 EDT
IClasspathEntry was null

as returned from IClasspathContainer.getClasspathEntries()

It is impossible to see which IClasspathContainer did that.

I see one possible null for IClasspathEntry in 
javadoc.JavaDocLocations.convertContainer().

We can fix that an fail earlier.
Comment 2 Eclipse Genie CLA 2021-09-06 13:29:33 EDT
New Gerrit change created: https://git.eclipse.org/r/c/jdt/eclipse.jdt.core/+/185058
Comment 3 Jay Arthanareeswaran CLA 2021-11-19 01:21:46 EST
Bulk move out of 4.22.

If this is going to make it to 4.22, feel free to set the target back.