Community
Participate
Working Groups
Using last I-build (both I20070130-0800 and I20070201-0800), I got following NPEs while starting my workspace: !ENTRY org.eclipse.core.jobs 4 2 2007-02-02 08:50:14.927 !MESSAGE An internal error occurred during: "Override indicator installation job". !STACK 0 java.lang.NullPointerException at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInType(Bindings.java:423) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:440) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:451) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:451) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethod(Bindings.java:474) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager$1.visit(OverrideIndicatorManager.java:179) at org.eclipse.jdt.core.dom.MethodDeclaration.accept0(MethodDeclaration.java:486) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2546) at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:483) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2546) at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:213) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager.updateAnnotations(OverrideIndicatorManager.java:172) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager.reconciled(OverrideIndicatorManager.java:251) at org.eclipse.jdt.internal.ui.javaeditor.JavaEditor$8.run(JavaEditor.java:3252) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58) !ENTRY org.eclipse.core.jobs 4 2 2007-02-02 08:50:17.000 !MESSAGE An internal error occurred during: "Override indicator installation job". !STACK 0 java.lang.NullPointerException at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInType(Bindings.java:423) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:440) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:451) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethodInHierarchy(Bindings.java:451) at org.eclipse.jdt.internal.corext.dom.Bindings.findOverriddenMethod(Bindings.java:474) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager$1.visit(OverrideIndicatorManager.java:179) at org.eclipse.jdt.core.dom.MethodDeclaration.accept0(MethodDeclaration.java:486) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2546) at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:483) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2546) at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:213) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2476) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager.updateAnnotations(OverrideIndicatorManager.java:172) at org.eclipse.jdt.internal.ui.javaeditor.OverrideIndicatorManager.reconciled(OverrideIndicatorManager.java:251) at org.eclipse.jdt.internal.ui.javaeditor.JavaEditor$8.run(JavaEditor.java:3252) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
Must be a problem in core. Te relevant UI code is in Bindings.java:451 : ITypeBinding type= ... ... ITypeBinding[] interfaces= type.getInterfaces(); for (int i= 0; i < interfaces.length; i++) { method= findOverriddenMethodInHierarchy(interfaces[i], binding); if (method != null) return method; } The value in interfaces[i] turns out to be null.
Unfortunately, I lost the configuration of the workspace on which this problem occurred and I'm not able to reproduce these failures now...
Steps in N20070202-0010 (got them from trying to reproduce bug 172679): - new workspace - new plug-in "My", all defaults - on "Dependencies" tab, add "org.eclipse.jface.databinding" - open type "SpinnerObservableValue"
Reproduced. I am investigating.
The problem comes from the missing binary type binding support. They are not expected on the DOM binding side. I'll prepare a fix for 3.3M5 and 3.2.2.
Should be backported to 3.2.2. I am preparing a patch for 3.2.2 and 3.3M5.
To clarify, the situation may only arise in presence of missing binary types, i.e. consequences of build path errors (where buildpath is incomplete). Not the most frequent scenario, but bad enough that we should address this. This is a regression.
Created attachment 58396 [details] Patch for HEAD
Created attachment 58397 [details] Patch for 3.2 maintenance
I am waiting for a 3.2.2 +1 in order to release in 3.2 maintenance stream and to update the map files.
+1 for 3.2.2. Pls coordinate with releng for triggering another 3.2.2 build iteration (early next week most likely).
Created attachment 58466 [details] New patch for 3.3M5 This patch only fixes the null check. A more complete fix with caching inside the TypeBinding will be released post M5.
Released for 3.3M5. Added regression tests org.eclipse.jdt.core.tests.dom.ASTConverter15Test#test0235/0236. I leave it open to be released in 3.2 maintenance stream.
Created attachment 58522 [details] New patch for 3.2 maintenance
Released for 3.2.2. Same regression tests.
Verified for 3.3M5 using I20070208-0010