Bug 468571 - AbortCompilation in CancelableNameEnvironment.checkCanceled (34)
Summary: AbortCompilation in CancelableNameEnvironment.checkCanceled (34)
Status: NEW
Alias: None
Product: AJDT
Classification: Tools
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: AJDT-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-28 02:27 EDT by EPP Error Reports CLA
Modified: 2017-08-03 12:08 EDT (History)
4 users (show)

See Also:


Attachments
"jdt" filtered plugins installed (285.02 KB, image/png)
2017-08-03 07:55 EDT, bandolero perez CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2015-05-28 02:27:46 EDT
The following incident was reported via the automated error reporting:


    code:                   0
    plugin:                 org.eclipse.ui_3.105.0.v20130522-1122
    message:                Unhandled event loop exception
    fingerprint:            69317ec4
    exception class:        org.eclipse.jdt.internal.compiler.problem.AbortCompilation
    exception message:      
    number of children:     0
    
    org.eclipse.jdt.internal.compiler.problem.AbortCompilation: 
    at org.eclipse.jdt.internal.core.CancelableNameEnvironment.checkCanceled(CancelableNameEnvironment.java:34)
    at org.eclipse.jdt.internal.core.CancelableNameEnvironment.findType(CancelableNameEnvironment.java:44)
    at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:145)
    at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:197)
    at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2799)
    at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2509)
    at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding(SingleTypeReference.java:44)
    at org.eclipse.jdt.internal.compiler.ast.TypeReference.internalResolveType(TypeReference.java:132)
    at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:204)
    at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypeFor(SourceTypeBinding.java:1439)
    at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.fields(SourceTypeBinding.java:717)
    at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.availableFields(ReferenceBinding.java:180)
    at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleFields(InternalExtendedCompletionContext.java:521)
    at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleVariablesAndMethods(InternalExtendedCompletionContext.java:810)
    at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.computeVisibleElementBindings(InternalExtendedCompletionContext.java:182)
    at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.getVisibleElements(InternalExtendedCompletionContext.java:368)
    at org.eclipse.jdt.internal.codeassist.InternalCompletionContext.getVisibleElements(InternalCompletionContext.java:324)
    at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.getAssignableElements(ParameterGuessingProposal.java:113)
    at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.guessParameters(ParameterGuessingProposal.java:322)
    at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeGuessingCompletion(ParameterGuessingProposal.java:254)
    at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeReplacementString(ParameterGuessingProposal.java:220)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.getReplacementString(LazyJavaCompletionProposal.java:331)
    at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:365)
    at org.eclipse.jdt.internal.ui.text.java.JavaMethodCompletionProposal.apply(JavaMethodCompletionProposal.java:58)
    at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.apply(ParameterGuessingProposal.java:124)
    at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:495)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.apply(LazyJavaCompletionProposal.java:489)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:940)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:891)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1323)
    at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:808)
    at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:491)
    at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:65)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:778)
    at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5954)
    at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5636)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
    at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1525)
    at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4723)
    at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:344)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4611)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4977)
    at org.eclipse.swt.internal.win32.OS.DispatchMessageW(OS.java:-2)
    at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:140)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:611)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(null:-2)
    at sun.reflect.NativeMethodAccessorImpl.invoke(null:-1)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(null:-1)
    at java.lang.reflect.Method.invoke(null:-1)
    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)
   
  

General Information:

    reported-by:      
    anonymous-id:     82850690-4c3a-3f7a-ac5c-2f69734a2d9e
    eclipse-build-id: 4.3.2.M20140221-1700
    eclipse-product:  org.eclipse.epp.package.jee.product
    operating system: Windows7 6.1.0 (x86) - win32
    jre-version:      1.8.0_05-b13

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.core.databinding.observable_1.4.1.v20130515-1857
    2. org.eclipse.core.databinding_1.4.1.v20130515-1857
    3. org.eclipse.core.runtime_3.9.100.v20131218-1515
    4. org.eclipse.e4.ui.workbench_1.0.2.v20131202-1739
    5. org.eclipse.e4.ui.workbench.swt_0.12.2.v20140117-1939
    6. org.eclipse.equinox.app_1.3.100.v20130327-1442
    7. org.eclipse.equinox.launcher_1.3.0.v20130327-1440
    8. org.eclipse.jdt_3.9.1.v20140221-1700
    9. org.eclipse.jdt.core_3.9.2.v20140114-1555
    10. org.eclipse.jdt.ui_3.9.2.v20131106-1600
    11. org.eclipse.jface.text_3.8.101.v20130802-1147
    12. org.eclipse.jface_3.9.1.v20130725-1141
    13. org.eclipse.swt_3.102.1.v20140206-1334
    14. org.eclipse.ui_3.105.0.v20130522-1122
    15. org.eclipse.ui.ide.application_1.0.401.v20131105-1007
    16. org.eclipse.ui.ide_3.9.2.v20131004-0923

Please note that:
* Messages, stacktraces, and nested status objects may be shortened.
* Bug fields like status, resolution, and whiteboard are sent
  back to reporters.
* The list of present bundles and their respective versions was
  calculated by package naming heuristics. This may or may not reflect reality.

Other Resources:
* Report: https://dev.eclipse.org/recommenders/committers/confess/#/problems/54c4ef3fbee810030da06ac6  
* Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide


Thank you for your assistance.
Your friendly error-reports-inbox.
Comment 1 Elias Balasis CLA 2015-09-22 11:31:55 EDT
Well, I observed this during code-assist, I haven't observed anything peculiar, except that code assist didn't activate the chosen element from the list for some reason, before the error.

Not sure if it is related.
Comment 2 Stephan Herrmann CLA 2015-09-22 12:24:36 EDT
AbortCompilation is a normal thing to happen when using CancelableNameEnvironment, but nobody seems to care about it in this particular call stack.

Trying to find the responsible level, I can't, however, figure out how the CancelableNameEnvironment entered the picture in the first place.

InternalExtendedCompletionContext seems to be working with a Scope that via environment().nameEnvironment is connected to the CancelableNameEnvironment.

This scope (#assistScope) is initialized from this chain:

InternalExtendedCompletionContext.assistScope
InternalExtendedCompletionContext.InternalExtendedCompletionContext(InternalCompletionContext, ITypeRoot, CompilationUnitDeclaration, LookupEnvironment, Scope, ASTNode, ASTNode, WorkingCopyOwner, CompletionParser)
InternalCompletionContext.setExtendedData(ITypeRoot, CompilationUnitDeclaration, LookupEnvironment, Scope, ASTNode, ASTNode, WorkingCopyOwner, CompletionParser)
CompletionEngine.buildContext(ASTNode, ASTNode, CompilationUnitDeclaration, Binding, Scope)
CompletionEngine.complete(ASTNode, ASTNode, ASTNode, CompilationUnitDeclaration, Binding, Scope, boolean)
CompletionEngine.complete(ICompilationUnit, int, int, ITypeRoot)

Hence we are using CompletionEngine#lookupEnvironment

However, all paths leading into assigning this lookupEnvironment seem to obtain the name environment via 

   project.newSearchableNameEnvironment(owner)

which only ever creates a SearchableEnvironment, never a CancelableNameEnvironment

Am I missing anything?


@Team: Has anything significant changed in this area since 3.9.2?
Comment 3 Nándor Elöd Fekete CLA 2016-03-16 22:08:34 EDT
What I observed that, when this exception happens, [some of the] code completion stops working afterwards for that editor, so one has to recycle the editor to have code completion working properly again. In most cases it happened to me while trying to complete a type name when adding an implements or extends clause to a class definition.
Comment 4 bandolero perez CLA 2017-08-03 05:22:55 EDT
This one bug happens to me very often in Eclipse Version: Oxygen Release (4.7.0)
Build id: 20170620-1800 using codeAssist and selecting one of the offered API methods and pressing ENTER... any idea on how to get rid of it?
Comment 5 bandolero perez CLA 2017-08-03 05:25:20 EDT
(In reply to bandolero perez from comment #4)
> This one bug happens to me very often in Eclipse Version: Oxygen Release
> (4.7.0)
> Build id: 20170620-1800 using codeAssist and selecting one of the offered
> API methods and pressing ENTER... any idea on how to get rid of it?

More info:
Unhandled event loop exception

eclipse.buildId=4.7.0.I20170612-0950
java.version=1.8.0_73
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_GB
Framework arguments:  -product org.eclipse.epp.package.java.product -keyring /Users/daniel/.eclipse_keyring
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.java.product -keyring /Users/daniel/.eclipse_keyring

---------------------------------------------
org.eclipse.jdt.internal.compiler.problem.AbortCompilation: 
	at org.eclipse.jdt.internal.core.CancelableNameEnvironment.checkCanceled(CancelableNameEnvironment.java:34)
	at org.eclipse.jdt.internal.core.CancelableNameEnvironment.findType(CancelableNameEnvironment.java:44)
	at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:174)
	at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:201)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:3264)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2976)
	at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding(SingleTypeReference.java:51)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.internalResolveType(TypeReference.java:495)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:586)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:582)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:578)
	at org.eclipse.jdt.internal.compiler.ast.Annotation.resolveType(Annotation.java:800)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveAnnotations(ASTNode.java:846)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveAnnotations(ASTNode.java:714)
	at org.eclipse.jdt.internal.compiler.lookup.MethodBinding.getAnnotationTagBits(MethodBinding.java:651)
	at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesWithSuspendedTempErrorHandlingPolicy(SourceTypeBinding.java:1839)
	at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor(SourceTypeBinding.java:1819)
	at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods(SourceTypeBinding.java:1513)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.methods(ParameterizedTypeBinding.java:972)
	at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.availableMethods(ReferenceBinding.java:239)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleMethods(InternalExtendedCompletionContext.java:688)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleVariablesAndMethods(InternalExtendedCompletionContext.java:828)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.computeVisibleElementBindings(InternalExtendedCompletionContext.java:189)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.getVisibleElements(InternalExtendedCompletionContext.java:376)
	at org.eclipse.jdt.internal.codeassist.InternalCompletionContext.getVisibleElements(InternalCompletionContext.java:324)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.getAssignableElements(ParameterGuessingProposal.java:109)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.guessParameters(ParameterGuessingProposal.java:326)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeGuessingCompletion(ParameterGuessingProposal.java:258)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeReplacementString(ParameterGuessingProposal.java:224)
	at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.getReplacementString(LazyJavaCompletionProposal.java:332)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:389)
	at org.eclipse.jdt.internal.ui.text.java.JavaMethodCompletionProposal.apply(JavaMethodCompletionProposal.java:58)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.apply(ParameterGuessingProposal.java:120)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:520)
	at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.apply(LazyJavaCompletionProposal.java:443)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:982)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:931)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1356)
	at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:807)
	at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:485)
	at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:66)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4257)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1502)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1525)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1510)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1314)
	at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:6029)
	at org.eclipse.swt.custom.StyledText.lambda$1(StyledText.java:5732)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4257)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1502)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1525)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1510)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1539)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1535)
	at org.eclipse.swt.widgets.Canvas.sendKeyEvent(Canvas.java:518)
	at org.eclipse.swt.widgets.Control.doCommandBySelector(Control.java:1090)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5889)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(NSResponder.java:68)
	at org.eclipse.swt.widgets.Composite.keyDown(Composite.java:601)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5799)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:228)
	at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:2148)
	at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:2402)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5861)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:5290)
	at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5439)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(NSApplication.java:128)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3695)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1044)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
Comment 6 Stephan Herrmann CLA 2017-08-03 06:12:50 EDT
(In reply to bandolero perez from comment #5)
> eclipse.buildId=4.7.0.I20170612-0950

Thanks, so it does happen with recent builds.
So s.t. in my theory of comment 2 must be wrong, but looking at it again today, I still cannot believe a CancelableNameEnvironment appearing in this situation.

Also, searching for instantiations of CancelableNameEnvironment I can find no connection, because this class is only ever instantiated by CompilationUnitProblemFinder (internal) and CompilationUnitResolver (dom). For neither can I find a connection to code completion.

To shed any doubt about the versions involved, can you please paste the exact versions of plugins org.eclipse.jdt.core and org.eclipse.jdt.ui? Is any bytecode weaving involved in your setup (lombok, scala IDE or such)? TIA
Comment 7 bandolero perez CLA 2017-08-03 07:55:18 EDT
Created attachment 269675 [details]
"jdt" filtered plugins installed

some possibly relevant plugins present in a environment where the error occurs almost constantly.
Comment 8 bandolero perez CLA 2017-08-03 07:55:40 EDT
(In reply to Stephan Herrmann from comment #6)
> (In reply to bandolero perez from comment #5)
> > eclipse.buildId=4.7.0.I20170612-0950
> 
> Thanks, so it does happen with recent builds.
> So s.t. in my theory of comment 2 must be wrong, but looking at it again
> today, I still cannot believe a CancelableNameEnvironment appearing in this
> situation.
> 
> Also, searching for instantiations of CancelableNameEnvironment I can find
> no connection, because this class is only ever instantiated by
> CompilationUnitProblemFinder (internal) and CompilationUnitResolver (dom).
> For neither can I find a connection to code completion.
> 
> To shed any doubt about the versions involved, can you please paste the
> exact versions of plugins org.eclipse.jdt.core and org.eclipse.jdt.ui? Is
org.eclipse.jdt.core (3.13.0.v20170516-1929) 
org.eclipse.jdt.ui (3.13.0.v20170511-1354) 

> any bytecode weaving involved in your setup (lombok, scala IDE or such)? TIA
Yes. AspectJ 2.2.4 
org.eclipse.ajdt.core (2.2.4.201704242114)

I have attached a screenshot of the "*jdt*" plugins. 

Don't hesitate to ask for more info
Thanks,

Dani
Comment 9 Stephan Herrmann CLA 2017-08-03 08:27:16 EDT
(In reply to bandolero perez from comment #8)
> (In reply to Stephan Herrmann from comment #6)
> > (In reply to bandolero perez from comment #5)
> > > eclipse.buildId=4.7.0.I20170612-0950
> > 
> > Thanks, so it does happen with recent builds.
> > So s.t. in my theory of comment 2 must be wrong, but looking at it again
> > today, I still cannot believe a CancelableNameEnvironment appearing in this
> > situation.
> > 
> > Also, searching for instantiations of CancelableNameEnvironment I can find
> > no connection, because this class is only ever instantiated by
> > CompilationUnitProblemFinder (internal) and CompilationUnitResolver (dom).
> > For neither can I find a connection to code completion.
> > 
> > To shed any doubt about the versions involved, can you please paste the
> > exact versions of plugins org.eclipse.jdt.core and org.eclipse.jdt.ui? Is
> org.eclipse.jdt.core (3.13.0.v20170516-1929) 
> org.eclipse.jdt.ui (3.13.0.v20170511-1354) 
> 
> > any bytecode weaving involved in your setup (lombok, scala IDE or such)? TIA
> Yes. AspectJ 2.2.4 
> org.eclipse.ajdt.core (2.2.4.201704242114)

IIRC, JDT weaving can be disabled via a preference option, right? Does the error also occur when you disable this? Otherwise, please try in a clean Eclipse installation without AJDT / JDT weaving.
Comment 10 bandolero perez CLA 2017-08-03 09:58:34 EDT
(In reply to Stephan Herrmann from comment #9)
> (In reply to bandolero perez from comment #8)
> > (In reply to Stephan Herrmann from comment #6)
> > > (In reply to bandolero perez from comment #5)
> > > > eclipse.buildId=4.7.0.I20170612-0950
> > > 
> > > Thanks, so it does happen with recent builds.
> > > So s.t. in my theory of comment 2 must be wrong, but looking at it again
> > > today, I still cannot believe a CancelableNameEnvironment appearing in this
> > > situation.
> > > 
> > > Also, searching for instantiations of CancelableNameEnvironment I can find
> > > no connection, because this class is only ever instantiated by
> > > CompilationUnitProblemFinder (internal) and CompilationUnitResolver (dom).
> > > For neither can I find a connection to code completion.
> > > 
> > > To shed any doubt about the versions involved, can you please paste the
> > > exact versions of plugins org.eclipse.jdt.core and org.eclipse.jdt.ui? Is
> > org.eclipse.jdt.core (3.13.0.v20170516-1929) 
> > org.eclipse.jdt.ui (3.13.0.v20170511-1354) 
> > 
> > > any bytecode weaving involved in your setup (lombok, scala IDE or such)? TIA
> > Yes. AspectJ 2.2.4 
> > org.eclipse.ajdt.core (2.2.4.201704242114)
> 
> IIRC, JDT weaving can be disabled via a preference option, right? Does the
> error also occur when you disable this? Otherwise, please try in a clean
> Eclipse installation without AJDT / JDT weaving.

Thanks, that seemed to do the trick!
I've disable JDT via Eclipse preferences and restarted. It seems to work now although I've done only a few tests. But before it would have errored already. If it raises its ugly head again I'll report back. 

This means it's a problem specific to the AJDT plugin right?
Comment 11 Stephan Herrmann CLA 2017-08-03 12:06:35 EDT
(In reply to bandolero perez from comment #10)
> This means it's a problem specific to the AJDT plugin right?

I'd say so.

Moving.

Hint for AJDT folks: my theory says that you might be introducing a CancelableNameEnvironment into code assist, where nobody expects it. If you do so, please also handle the resulting AbortCompilation exception :)
Comment 12 Stephan Herrmann CLA 2017-08-03 12:08:09 EDT
To avoid possible confusion:

(In reply to bandolero perez from comment #10)
> I've disable JDT via Eclipse preferences and restarted. It seems to work now

Most certainly meant to say "disabled JDT weaving" ...