Bug 420590 - JavaIndexTests.testExistentIndexAfterRestart failed with error: NPE in SimpleLookupTable.put
Summary: JavaIndexTests.testExistentIndexAfterRestart failed with error: NPE in Simple...
Status: CLOSED DUPLICATE of bug 411093
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 4.4   Edit
Hardware: PC Mac OS X
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Manoj N Palat CLA
QA Contact:
URL:
Whiteboard:
Keywords: test
Depends on:
Blocks:
 
Reported: 2013-10-29 05:03 EDT by Dani Megert CLA
Modified: 2013-11-29 07:19 EST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dani Megert CLA 2013-10-29 05:03:50 EDT
N20131028-0800.

N/A

java.lang.NullPointerException
at org.eclipse.jdt.internal.compiler.util.SimpleLookupTable.put(SimpleLookupTable.java:98)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.readIndexMap(IndexManager.java:1006)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.getIndexStates(IndexManager.java:439)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.computeIndexLocation(IndexManager.java:186)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.aboutToUpdateIndex(IndexManager.java:81)
at org.eclipse.jdt.internal.core.search.indexing.IndexRequest.ensureReadyToRun(IndexRequest.java:37)
at org.eclipse.jdt.internal.core.search.processing.JobManager.request(JobManager.java:290)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.indexLibrary(IndexManager.java:578)
at org.eclipse.jdt.internal.core.search.indexing.IndexManager.indexLibrary(IndexManager.java:538)
at org.eclipse.jdt.internal.core.DeltaProcessor.createExternalArchiveDelta(DeltaProcessor.java:1005)
at org.eclipse.jdt.internal.core.DeltaProcessor.checkExternalArchiveChanges(DeltaProcessor.java:794)
at org.eclipse.jdt.internal.core.DeltaProcessor.checkExternalArchiveChanges(DeltaProcessor.java:764)
at org.eclipse.jdt.internal.core.JavaModel.refreshExternalArchives(JavaModel.java:271)
at org.eclipse.jdt.core.tests.model.JavaIndexTests.testExistentIndexAfterRestart(JavaIndexTests.java:396)
at org.eclipse.jdt.core.tests.model.SuiteOfTestCases$Suite.runTest(SuiteOfTestCases.java:104)
at org.eclipse.jdt.core.tests.model.SuiteOfTestCases$Suite.superRun(SuiteOfTestCases.java:88)
at org.eclipse.jdt.core.tests.model.SuiteOfTestCases$1.protect(SuiteOfTestCases.java:76)
at org.eclipse.jdt.core.tests.model.SuiteOfTestCases$Suite.run(SuiteOfTestCases.java:85)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:657)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:310)
at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:36)
at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:32)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:109)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:80)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:372)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:226)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
at org.eclipse.core.launcher.Main.main(Main.java:34)
Comment 1 Manoj N Palat CLA 2013-10-29 23:03:31 EDT
(In reply to Dani Megert from comment #0)
> N20131028-0800.
> 
I20131028-0800 actually at
http://download.eclipse.org/eclipse/downloads/drops4/I20131028-0800/testResults.php
Comment 2 Manoj N Palat CLA 2013-10-29 23:11:02 EDT
Reproduced the error on local machine
Comment 3 Dani Megert CLA 2013-11-28 02:54:19 EST

*** This bug has been marked as a duplicate of bug 411093 ***
Comment 5 Jay Arthanareeswaran CLA 2013-11-28 05:24:56 EST
(In reply to Manoj Palat from comment #4)
> Committed via
> http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/
> ?id=9b1fcd23ff081eff51095c88c564eedd01574dc9

Manoj,

  IndexLocation#createIndexLocation() call happens in few other places too and none of the seem to expect a null value. Shouldn't we handle them as well? In any case, it might help to log the IOException just so that we know what's going on.
Comment 6 Jay Arthanareeswaran CLA 2013-11-28 05:30:03 EST
(In reply to Jayaprakash Arthanareeswaran from comment #5)
> Manoj,
>   IndexLocation#createIndexLocation() call happens in few other places too
> and none of the seem to expect a null value. Shouldn't we handle them as
> well? In any case, it might help to log the IOException just so that we know
> what's going on.

  Just to be clear, I wasn't suggesting we add null checks in all other places. I am fine with the check you have added at the moment, but we should try and get to the root of the problem. First step should be to NOT ignore the IOException.
Comment 7 Manoj N Palat CLA 2013-11-28 06:49:57 EST
(In reply to Jayaprakash Arthanareeswaran from comment #6)
> (In reply to Jayaprakash Arthanareeswaran from comment #5)
> > Manoj,
> >   IndexLocation#createIndexLocation() call happens in few other places too
> > and none of the seem to expect a null value. Shouldn't we handle them as
> > well? In any case, it might help to log the IOException just so that we know
> > what's going on.
> 
>   Just to be clear, I wasn't suggesting we add null checks in all other
> places. I am fine with the check you have added at the moment, but we should
> try and get to the root of the problem. First step should be to NOT ignore
> the IOException.

I know. That's the reason that I did not commit this change for quite sometime until I got some time to investigate this further. 
And this fix is only for the time being. Since this bug was closed I had made a comment in bug 411093 comment 7 for further investigation and left that bug open.