Community
Participate
Working Groups
There appears to be an error when sending large entries to Bugzilla. I received an internal error when doing a Search on references to String in Eclipse. I am using the 1.3.1 Hursley VM STEPS 1) Import all of Eclipse 2) Open the Search dialog 3) Do a Java Search on all references to String
I recievied 100 or so entries of the form <?xml version="1.0" encoding="UTF-8"?> <log> <log-entry date="Wed Apr 17 15:05:59 EDT 2002"> <status plugin-id="org.eclipse.jdt.ui" severity="ERROR" message="Internal Error" code="1"> <exception message="Execute$Java13CommandLauncher$ScriptCommandLauncher.class does not exist." trace=" org.eclipse.jdt.core.JavaModelException[966]: Java Model Exception: Java Model Status [Execute$Java13CommandLauncher$ScriptCommandLauncher.class does not exist.] at org.eclipse.jdt.internal.core.ClassFile.getBinaryTypeInfo (ClassFile.java(Compiled Code)) at org.eclipse.jdt.internal.core.ClassFile.getBinaryTypeInfo (ClassFile.java(Compiled Code)) at org.eclipse.jdt.internal.core.ClassFile.generateInfos(ClassFile.java (Compiled Code)) at org.eclipse.jdt.internal.core.Openable.buildStructure(Openable.java (Compiled Code)) at org.eclipse.jdt.internal.core.Openable.openWhenClosed(Openable.java (Compiled Code)) at org.eclipse.jdt.internal.core.BinaryMember.openHierarchy (BinaryMember.java(Compiled Code)) at org.eclipse.jdt.internal.core.BinaryType.isInterface(BinaryType.java (Compiled Code)) at org.eclipse.jdt.internal.core.BinaryType.isInterface(BinaryType.java (Compiled Code)) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getBaseImageDes criptor(JavaElementImageProvider.java:169) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getJavaImageDes criptor(JavaElementImageProvider.java:135) at org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider.getImageLabel (JavaElementImageProvider.java:107) at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.getImage (JavaUILabelProvider.java(Compiled Code)) at org.eclipse.jface.viewers.DecoratingLabelProvider.getImage (DecoratingLabelProvider.java:65) at org.eclipse.jdt.internal.ui.search.JavaSearchResultLabelProvider.getImage (JavaSearchResultLabelProvider.java:77) at org.eclipse.jface.viewers.DecoratingLabelProvider.getImage (DecoratingLabelProvider.java:65) at org.eclipse.jface.viewers.StructuredViewer.getLabel (StructuredViewer.java:1089) at org.eclipse.jface.viewers.TableViewer.doUpdateItem (TableViewer.java:185) at org.eclipse.jface.viewers.StructuredViewer.updateItem (StructuredViewer.java:1044) at org.eclipse.jface.viewers.TableViewer.internalRefresh (TableViewer.java:481) at org.eclipse.jface.viewers.TableViewer.internalRefresh (TableViewer.java:423) at org.eclipse.jface.viewers.StructuredViewer$1.run (StructuredViewer.java:676) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection (StructuredViewer.java:616) at org.eclipse.jface.viewers.StructuredViewer.refresh (StructuredViewer.java:674) at org.eclipse.jface.viewers.StructuredViewer.refresh (StructuredViewer.java:636) at org.eclipse.jface.viewers.TableViewer.inputChanged (TableViewer.java:390) at org.eclipse.search.internal.ui.SearchResultViewer.inputChanged (SearchResultViewer.java:198) at org.eclipse.jface.viewers.ContentViewer.setInput (ContentViewer.java:234) at org.eclipse.jface.viewers.StructuredViewer.setInput (StructuredViewer.java:785) at org.eclipse.search.internal.ui.SearchManager.handleNewSearchResult (SearchManager.java:401) at org.eclipse.search.internal.ui.SearchManager.handleSearchMarkersChanged (SearchManager.java:340) at org.eclipse.search.internal.ui.SearchManager.access$2 (SearchManager.java:337) at org.eclipse.search.internal.ui.SearchManager$7.run (SearchManager.java:472) at org.eclipse.ui.internal.UIWorkspaceLock.doPendingWork (UIWorkspaceLock.java:53) at org.eclipse.ui.internal.UISynchronizer$1.run(UISynchronizer.java:23) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages (Synchronizer.java(Compiled Code)) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java(Compiled Code)) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java(Compiled Code)) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block (ModalContext.java(Compiled Code)) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:258) at org.eclipse.search.internal.ui.util.ExtendedDialogWindow.run (ExtendedDialogWindow.java:205) at org.eclipse.jdt.internal.ui.search.JavaSearchPage.performAction (JavaSearchPage.java:181) at org.eclipse.search.internal.ui.SearchDialog.performAction (SearchDialog.java:222) at org.eclipse.search.internal.ui.util.ExtendedDialogWindow.buttonPressed (ExtendedDialogWindow.java:162) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:356) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java (Compiled Code)) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java (Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:525) at org.eclipse.search.internal.ui.OpenSearchDialogAction.run (OpenSearchDialogAction.java:45) at org.eclipse.search.internal.ui.OpenSearchDialogAction.run (OpenSearchDialogAction.java:32) at org.eclipse.ui.internal.PluginAction.runWithEvent (PluginAction.java:202) at org.eclipse.ui.internal.WWinPluginAction.runWithEvent (WWinPluginAction.java:162) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:407) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java(Compiled Code)) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java(Compiled Code)) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java(Compiled Code)) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java (Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java (Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:819) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:777) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:319) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:190) at org.eclipse.core.launcher.Main.run(Main.java:549) at org.eclipse.core.launcher.Main.main(Main.java:390) "> </exception> </status> </log-entry>
JavaElementImageProvider.getBaseImageDescriptor is logging a CoreException and returns a ghost icon. The question is how can we get a match reported for an element but when we want to render it and ask additional info about we get a not exist exception? Is this an expected sitatuation that we should not log as an internal error?
Tod, did you import Eclipse from source or you left all projects in binaries?
I had imported them all as source. This does not currently work in build 20020515 (see Bug 16163) so you will likely have to load from the repository to replicate this.
Did you build before the search?
I believe so - I normally test with auto build on.
I could not reproduce. The search completed fine, but now the CPU is 100% for the last half and hour trying to display the 40,000 or so results. I close it, but don't hesitate to reopen it if you encounter it again.
I got another error: Caused by: java.lang.NullPointerException at org.eclipse.jdt.internal.core.search.matching.MatchLocator.createMethodHandle(MatchLocator.java:321) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.reportReference(MatchLocator.java:1028) at org.eclipse.jdt.internal.core.search.matching.MatchSet.reportMatching(MatchSet.java:176) at org.eclipse.jdt.internal.core.search.matching.MatchSet.reportMatching(MatchSet.java:353) at org.eclipse.jdt.internal.core.search.matching.MatchSet.reportMatching(MatchSet.java:261) at org.eclipse.jdt.internal.core.search.matching.MatchingOpenable.locateMatchesInCompilationUnit(MatchingOpenable.java:309) at org.eclipse.jdt.internal.core.search.matching.MatchingOpenable.locateMatches(MatchingOpenable.java:171) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1322) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:597) at org.eclipse.jdt.core.search.SearchEngine.search(SearchEngine.java:410) at org.eclipse.jdt.internal.ui.search.JavaSearchOperation.execute(JavaSearchOperation.java:86) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:64) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1361) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:78) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:98)
This error is due to the fact that the MatchLocator is not protected against the case where getMethods() can return null. All other references are protected except this one. Fixed and released in HEAD.