Bug 212322 - NPE occurred in org.eclipse.jdt.internal.core.search.JavaSearchScope
Summary: NPE occurred in org.eclipse.jdt.internal.core.search.JavaSearchScope
Status: VERIFIED DUPLICATE of bug 211962
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.3.1   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.3.2   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-08 05:24 EST by Alexander Maletz CLA
Modified: 2008-01-24 05:08 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Maletz CLA 2007-12-08 05:24:40 EST
Build ID: M20071205-0800

Steps To Reproduce:
1.Navigate->Open type
2.Start typing letters (any)
3.Exception dialog is shown

This did not occur in Eclipse 3.1.1. Started happening for me only in 3.3.2 builds. Looks very similar to bug 179199, but does not seem to be the same (exception is thrown from createTypeFromJar). There is quite a few jars that are referenced by many projects. Removing some of them fixes the problem, but I could not figure out WHAT in these jars causes crash.


More information:

eclipse.buildId=M20071023-1652
java.version=1.6.0_03
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Command-line arguments:  -os win32 -ws win32 -arch x86


The trace is following:
java.lang.NullPointerException
	at org.eclipse.jdt.internal.core.search.JavaSearchScope.packageFragmentRoot(JavaSearchScope.java:589)
	at org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper.createTypeFromJar(TypeNameMatchRequestorWrapper.java:124)
	at org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper.acceptType(TypeNameMatchRequestorWrapper.java:108)
	at org.eclipse.jdt.internal.core.search.BasicSearchEngine$2.acceptIndexMatch(BasicSearchEngine.java:767)
	at org.eclipse.jdt.internal.core.search.matching.InternalSearchPattern.acceptMatch(InternalSearchPattern.java:45)
	at org.eclipse.jdt.internal.core.search.matching.InternalSearchPattern.findIndexMatches(InternalSearchPattern.java:89)
	at org.eclipse.jdt.internal.core.search.matching.MatchLocator.findIndexMatches(MatchLocator.java:325)
	at org.eclipse.jdt.internal.core.search.PatternSearchJob.search(PatternSearchJob.java:114)
	at org.eclipse.jdt.internal.core.search.PatternSearchJob.execute(PatternSearchJob.java:64)
	at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(JobManager.java:279)
	at org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(BasicSearchEngine.java:778)
	at org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames(SearchEngine.java:781)
	at org.eclipse.jdt.internal.ui.dialogs.FilteredTypesSelectionDialog.fillContentProvider(FilteredTypesSelectionDialog.java:593)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.filterContent(FilteredItemsSelectionDialog.java:2083)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.internalRun(FilteredItemsSelectionDialog.java:2025)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.doRun(FilteredItemsSelectionDialog.java:1997)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.run(FilteredItemsSelectionDialog.java:1984)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Comment 1 Alexander Maletz CLA 2007-12-08 05:41:12 EST
Sorry I meant "This did not occur in Eclipse 3.3.1.1 ..."

As per bug 179199, i switched on debug output and here is output:

Start VM: -Xms40m
-Xmx256m
-XX:MaxPermSize=256m
-Djava.class.path=D:\bin\eclipse33\plugins\org.eclipse.equinox.launcher_1.0.1.R3
3x_v20070828.jar
-os win32
-ws win32
-arch x86
-showsplash D:\bin\eclipse33\\plugins\org.eclipse.platform_3.3.2.R33x_v20071010\
splash.bmp
-launcher D:\bin\eclipse33\eclipse.exe
-name Eclipse
--launcher.library D:\bin\eclipse33\plugins\org.eclipse.equinox.launcher.win32.w
in32.x86_1.0.2.R33x_v20071005\eclipse_1021.dll
-startup D:\bin\eclipse33\plugins\org.eclipse.equinox.launcher_1.0.1.R33x_v20070
828.jar
-debug
-vm d:\jdk1.6\bin\..\jre\bin\client\jvm.dll
-vmargs
-Xms40m
-Xmx256m
-XX:MaxPermSize=256m
-Djava.class.path=D:\bin\eclipse33\plugins\org.eclipse.equinox.launcher_1.0.1.R3
3x_v20070828.jar
Install location:
    file:/d:/bin/eclipse33/
Configuration file:
    file:/d:/bin/eclipse33/configuration/config.ini loaded
Configuration location:
    file:/d:/bin/eclipse33/configuration/
Framework located:
    file:/d:/bin/eclipse33/plugins/org.eclipse.osgi_3.3.1.R33x_v20071203.jar
Framework classpath:
    file:/d:/bin/eclipse33/plugins/org.eclipse.osgi_3.3.1.R33x_v20071203.jar
Splash location:
    D:\bin\eclipse33\\plugins\org.eclipse.platform_3.3.2.R33x_v20071010\splash.b
mp
Debug options:
    file:/D:/bin/eclipse33/.options loaded
Time to load bundles: 16
Starting application: 1172
Application Started: 15641
Thread[Worker-3,5,main] BasicSearchEngine.searchAllTypeNames(char[], char[], int
, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)
Thread[Worker-3,5,main]         - package name: null
Thread[Worker-3,5,main]         - match rule: R_EXACT_MATCH
Thread[Worker-3,5,main]         - type name: !@$#!@
Thread[Worker-3,5,main]         - match rule: R_PATTERN_MATCH | R_CASE_SENSITIVE

Thread[Worker-3,5,main]         - search for: 5
Thread[Worker-3,5,main]         - scope: JavaWorkspaceScope
Thread[Worker-3,5,main] BasicSearchEngine.searchAllTypeNames(char[], char[], int
, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)
Thread[Worker-3,5,main]         - package name: null
Thread[Worker-3,5,main]         - match rule: R_EXACT_MATCH
Thread[Worker-3,5,main]         - type name: _______________
Thread[Worker-3,5,main]         - match rule: R_CASE_SENSITIVE
Thread[Worker-3,5,main]         - search for: 7
Thread[Worker-3,5,main]         - scope: JavaWorkspaceScope
Thread[Worker-3,5,main] BasicSearchEngine.searchAllTypeNames(char[], char[], int
, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)
Thread[Worker-3,5,main]         - package name: null
Thread[Worker-3,5,main]         - match rule: R_EXACT_MATCH
Thread[Worker-3,5,main]         - type name: _______________
Thread[Worker-3,5,main]         - match rule: R_CASE_SENSITIVE
Thread[Worker-3,5,main]         - search for: 7
Thread[Worker-3,5,main]         - scope: JavaWorkspaceScope
Thread[Worker-0,5,main] BasicSearchEngine.searchAllTypeNames(char[], char[], int
, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)
Thread[Worker-0,5,main]         - package name: null
Thread[Worker-0,5,main]         - match rule: R_EXACT_MATCH
Thread[Worker-0,5,main]         - type name: s
Thread[Worker-0,5,main]         - match rule: R_PREFIX_MATCH
Thread[Worker-0,5,main]         - search for: 0
Thread[Worker-0,5,main]         - scope: JavaWorkspaceScope
Thread[Worker-3,5,main] BasicSearchEngine.searchAllTypeNames(char[], char[], int
, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)
Thread[Worker-3,5,main]         - package name: null
Thread[Worker-3,5,main]         - match rule: R_EXACT_MATCH
Thread[Worker-3,5,main]         - type name: ss
Thread[Worker-3,5,main]         - match rule: R_PREFIX_MATCH
Thread[Worker-3,5,main]         - search for: 0
Thread[Worker-3,5,main]         - scope: JavaWorkspaceSco
Comment 2 Frederic Fusier CLA 2007-12-10 09:18:58 EST

*** This bug has been marked as a duplicate of bug 211962 ***
Comment 3 Maxime Daniel CLA 2008-01-24 05:08:24 EST
Verified for 3.3.2 using build M20080123-0800.