Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 461189 - AIOOBE in QualifiedName.getLastSegment (191)
Summary: AIOOBE in QualifiedName.getLastSegment (191)
Status: RESOLVED FIXED
Alias: None
Product: OCL
Classification: Modeling
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: M6   Edit
Assignee: OCL Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-02 07:34 EST by EPP Error Reports CLA
Modified: 2015-03-02 14:14 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 EPP Error Reports CLA 2015-03-02 07:34:02 EST
The following incident was reported via the automated error reporting:


    code:                   0
    plugin:                 org.eclipse.ui.workbench.texteditor_3.9.100.v20141023-1946
    message:                Editor could not be initialized.
    fingerprint:            33a1625d
    exception class:        java.lang.ArrayIndexOutOfBoundsException
    exception message:      -1
    number of children:     0
    
    java.lang.ArrayIndexOutOfBoundsException: -1
    at org.eclipse.xtext.naming.QualifiedName.getLastSegment(QualifiedName.java:191)
    at org.eclipse.ocl.xtext.base.serializer.BaseCrossReferenceSerializer.getCrossReferenceNameFromScope(BaseCrossReferenceSerializer.java:218)
    at org.eclipse.xtext.serializer.tokens.CrossReferenceSerializer.serializeCrossRef(CrossReferenceSerializer.java:104)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.getToken(SequenceFeeder.java:454)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.accept(SequenceFeeder.java:238)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.accept(BacktrackingSemanticSequencer.java:401)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.createSequence(BacktrackingSemanticSequencer.java:454)
    at org.eclipse.qvtd.xtext.qvtimperative.serializer.AbstractQVTimperativeSemanticSequencer.sequence_DirectionCS(AbstractQVTimperativeSemanticSequencer.java:694)
    at org.eclipse.qvtd.xtext.qvtimperative.serializer.AbstractQVTimperativeSemanticSequencer.createSequence(AbstractQVTimperativeSemanticSequencer.java:567)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.acceptEObjectRuleCall(SequenceFeeder.java:299)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.acceptRuleCall(SequenceFeeder.java:325)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.accept(SequenceFeeder.java:239)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.accept(BacktrackingSemanticSequencer.java:401)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.createSequence(BacktrackingSemanticSequencer.java:454)
    at org.eclipse.qvtd.xtext.qvtcorebase.serializer.AbstractQVTcoreBaseSemanticSequencer.sequence_TransformationCS(AbstractQVTcoreBaseSemanticSequencer.java:709)
    at org.eclipse.qvtd.xtext.qvtimperative.serializer.AbstractQVTimperativeSemanticSequencer.createSequence(AbstractQVTimperativeSemanticSequencer.java:631)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.acceptEObjectRuleCall(SequenceFeeder.java:299)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.acceptRuleCall(SequenceFeeder.java:325)
    at org.eclipse.xtext.serializer.acceptor.SequenceFeeder.accept(SequenceFeeder.java:239)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.accept(BacktrackingSemanticSequencer.java:401)
    at org.eclipse.xtext.serializer.sequencer.BacktrackingSemanticSequencer.createSequence(BacktrackingSemanticSequencer.java:454)
    at org.eclipse.qvtd.xtext.qvtimperative.serializer.AbstractQVTimperativeSemanticSequencer.sequence_TopLevelCS(AbstractQVTimperativeSemanticSequencer.java:849)
    at org.eclipse.qvtd.xtext.qvtimperative.serializer.AbstractQVTimperativeSemanticSequencer.createSequence(AbstractQVTimperativeSemanticSequencer.java:677)
    at org.eclipse.xtext.serializer.impl.Serializer.serialize(Serializer.java:86)
    at org.eclipse.xtext.serializer.impl.Serializer.serialize(Serializer.java:109)
    at org.eclipse.xtext.serializer.impl.Serializer.serialize(Serializer.java:133)
    at org.eclipse.xtext.resource.XtextResource.doSave(XtextResource.java:345)
    at org.eclipse.emf.ecore.resource.impl.ResourceImpl.save(ResourceImpl.java:1430)
    at org.eclipse.ocl.xtext.base.ui.model.BaseCSorASDocumentProvider.setDocumentContent(BaseCSorASDocumentProvider.java:341)
    at org.eclipse.ui.editors.text.FileDocumentProvider.setDocumentContent(FileDocumentProvider.java:426)
    at org.eclipse.xtext.ui.editor.model.XtextDocumentProvider.setDocumentContent(XtextDocumentProvider.java:195)
    at org.eclipse.ocl.xtext.base.ui.model.BaseCSorASDocumentProvider.setDocumentContent(BaseCSorASDocumentProvider.java:258)
    at org.eclipse.ui.editors.text.StorageDocumentProvider.createDocument(StorageDocumentProvider.java:229)
    at org.eclipse.xtext.ui.editor.model.XtextDocumentProvider.createDocument(XtextDocumentProvider.java:140)
    at org.eclipse.ui.editors.text.FileDocumentProvider.createElementInfo(FileDocumentProvider.java:737)
    at org.eclipse.xtext.ui.editor.model.XtextDocumentProvider.createElementInfo(XtextDocumentProvider.java:253)
    at org.eclipse.ui.texteditor.AbstractDocumentProvider.connect(AbstractDocumentProvider.java:400)
    at org.eclipse.ui.texteditor.AbstractTextEditor.doSetInput(AbstractTextEditor.java:4233)
    at org.eclipse.ui.texteditor.StatusTextEditor.doSetInput(StatusTextEditor.java:237)
    at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.doSetInput(AbstractDecoratedTextEditor.java:1480)
    at org.eclipse.ui.editors.text.TextEditor.doSetInput(TextEditor.java:169)
    at org.eclipse.xtext.ui.editor.XtextEditor.doSetInput(XtextEditor.java:247)
    at org.eclipse.ui.texteditor.AbstractTextEditor$19.run(AbstractTextEditor.java:3220)
    at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:463)
    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:371)
    at org.eclipse.ui.internal.WorkbenchWindow$13.run(WorkbenchWindow.java:2138)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2134)
    at org.eclipse.ui.texteditor.AbstractTextEditor.internalInit(AbstractTextEditor.java:3238)
    at org.eclipse.ui.texteditor.AbstractTextEditor.init(AbstractTextEditor.java:3265)
    at org.eclipse.xtext.ui.editor.XtextEditor.init(XtextEditor.java:287)
    at org.eclipse.ui.internal.EditorReference.initialize(EditorReference.java:366)
    at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:313)
    at sun.reflect.GeneratedMethodAccessor78.invoke(null:-1)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(null:-1)
    at java.lang.reflect.Method.invoke(null:-1)
    at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
    at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:888)
    at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:869)
    at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:120)
    at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:337)
    at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:258)
    at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
    at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:104)
    at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:73)
    at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:55)
    at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:128)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:983)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:662)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:766)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:737)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:731)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:715)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$1.handleEvent(PartServiceImpl.java:96)
    at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:40)
    at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
    at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
    at org.eclipse.swt.widgets.Display.syncExec(Display.java:4753)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:212)
    at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:36)
    at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
    at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
    at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
    at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
    at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
    at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
    at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
    at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:85)
    at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:59)
    at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
    at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:171)
    at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:488)
    at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:454)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:715)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:393)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1151)
    at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3185)
    at org.eclipse.ui.internal.WorkbenchPage.access$24(WorkbenchPage.java:3100)
    at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:3082)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3077)
    at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3041)
    at org.eclipse.ui.actions.OpenWithMenu.openEditor(OpenWithMenu.java:344)
    at org.eclipse.ui.actions.OpenWithMenu$2.handleEvent(OpenWithMenu.java:183)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4354)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4172)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:648)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:592)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
    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:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    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:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
   
  

General Information:

    reported-by:      Adolfo SBH
    anonymous-id:     ee6a7cf4-6277-45ce-b349-ac81306b3e3f
    eclipse-build-id: 4.5.0.I20150203-1300
    eclipse-product:  org.eclipse.epp.package.committers.product
    operating system: Windows7 6.1.0 (x86_64) - win32
    jre-version:      1.7.0_45-b18

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.core.databinding.observable_1.4.1.v20140910-2107
    2. org.eclipse.core.databinding_1.4.100.v20141002-1314
    3. org.eclipse.core.runtime_3.10.0.v20150112-1422
    4. org.eclipse.e4.core.contexts_1.3.100.v20140407-1019
    5. org.eclipse.e4.core.di_1.4.0.v20140813-2240
    6. org.eclipse.e4.ui.services_1.1.0.v20140815-1559
    7. org.eclipse.e4.ui.workbench_1.3.0.v20150113-2327
    8. org.eclipse.e4.ui.workbench.renderers.swt_0.12.100.v20150124-0011
    9. org.eclipse.e4.ui.workbench.swt_0.12.100.v20150114-0905
    10. org.eclipse.emf.common_2.11.0.v20150123-0347
    11. org.eclipse.emf_2.6.0.v20150123-0357
    12. org.eclipse.emf.ecore_2.11.0.v20150123-0347
    13. org.eclipse.equinox.app_1.3.200.v20130910-1609
    14. org.eclipse.equinox.event_1.3.100.v20140115-1647
    15. org.eclipse.equinox.launcher_1.3.0.v20140415-2008
    16. org.eclipse.jface_3.11.0.v20150121-1751
    17. org.eclipse.ocl.xtext.base_1.0.0.v20150211-0656
    18. org.eclipse.ocl_3.5.0.v20150120-1323
    19. org.eclipse.ocl.xtext.base.ui_1.0.0.v20150216-1745
    20. org.eclipse.osgi_3.10.100.v20150129-2253
    21. org.eclipse.qvtd.xtext.qvtcorebase_1.0.0.v20150209-0111
    22. org.eclipse.qvtd.xtext.qvtimperative_1.0.0.v20150123-1038
    23. org.eclipse.swt_3.104.0.v20150203-2243
    24. org.eclipse.ui_3.107.0.v20150107-0903
    25. org.eclipse.ui.editors_3.9.0.v20141118-1526
    26. org.eclipse.ui.ide.application_1.0.600.v20150120-1542
    27. org.eclipse.ui.ide_3.10.100.v20150126-1117
    28. org.eclipse.xtext_2.8.0.v201502030924
    29. org.eclipse.xtext.ui_2.8.0.v201502030924

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/54f2f9b1e4b0eb19d1a16fca  
* Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide


Thank you for your assistance.
Your friendly error-reports-inbox.
Comment 1 Ed Willink CLA 2015-03-02 14:14:48 EST
Need user model to discover why a null/empty name was looked up.

But we can at least ensure that sure a lookup finds nothing rather than throws an AIOOBE.

commit 3c8720e0858dbda49e0ea4c39f87cbcfaa9e82d8

pushed to master for M6