Open eclipse-ocl-bot opened 1 month ago
By Ed Willink on Jul 14, 2014 13:18
(In reply to Adolfo Sanchez-Barbudo Herrera from comment #0)
- Open the created Pivot.ocl.oclas -> StackOverflowException[1]
The reported StacvkOverflow doesn't happen until the DiagnosticDEcorator tries to do some work. A quicker repro occurs if the model is validated.
A StackOverflow also occurs if org.eclipse.ocl.examples.pivot/model-gen/Pivot.oclas is opened with the default editor. Probably the same problem.
By Adolfo Sanchez-Barbudo Herrera on Jul 14, 2014 13:26
It doesn't occur with other simple examples I've checked, but it does with the PivotNameResolution.ocl file in my branch. Perhaps, importing the pivot metamodel is the common cause of the failure in those two particular files.
| --- | --- | | Bugzilla Link | 439555 | | Status | NEW | | Importance | P3 normal | | Reported | Jul 14, 2014 12:24 EDT | | Modified | Jul 14, 2014 13:26 EDT | | Reporter | Adolfo Sanchez-Barbudo Herrera |
Description
Using OCL SDK All In One 5.0.1
Steps to reproduce.
[1] java.lang.StackOverflowError\ at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)\ at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)\ at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:54)\ at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)\ at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)\ at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)\ at org.eclipse.xtext.resource.XtextResourceFactory.createResource(XtextResourceFactory.java:19)\ at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.createResource(ResourceSetImpl.java:434)\ at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.createResource(ResourceSetImpl.java:423)\ at org.eclipse.ocl.examples.pivot.context.AbstractParserContext.createBaseResource(AbstractParserContext.java:62)\ at org.eclipse.ocl.examples.pivot.context.AbstractParserContext.parse(AbstractParserContext.java:121)\ at org.eclipse.ocl.examples.pivot.utilities.PivotUtil.getExpressionInOCL(PivotUtil.java:818)\ at org.eclipse.ocl.examples.pivot.utilities.PivotUtil.getExpressionInOCL(PivotUtil.java:807)\ at org.eclipse.ocl.examples.pivot.utilities.PivotUtil.getExpressionInOCL(PivotUtil.java:779)\ at org.eclipse.ocl.examples.pivot.internal.impl.OpaqueExpressionImpl.getExpressionInOCL(OpaqueExpressionImpl.java:375)\ at org.eclipse.ocl.examples.pivot.internal.impl.OpaqueExpressionImpl.eGet(OpaqueExpressionImpl.java:166)\ at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1011)\ at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1003)\ at org.eclipse.emf.edit.provider.ItemProviderAdapter.getValue(ItemProviderAdapter.java:167)\ at org.eclipse.emf.edit.provider.ItemProviderAdapter.getChildren(ItemProviderAdapter.java:381)\ at org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider.getChildren(AdapterFactoryContentProvider.java:175)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1475)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1480)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1480)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1480)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1480)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1480)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.decorate(DiagnosticDecorator.java:1428)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.redecorate(DiagnosticDecorator.java:1301)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator.handleDiagnostic(DiagnosticDecorator.java:1270)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator$DiagnosticDecoratorAdapter$Dispatcher.dispatch(DiagnosticDecorator.java:925)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator$DiagnosticDecoratorAdapter$Dispatcher.dispatch(DiagnosticDecorator.java:878)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator$DiagnosticDecoratorAdapter.updateDiagnostic(DiagnosticDecorator.java:979)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator$DiagnosticDecoratorAdapter.handleResourceDiagnostics(DiagnosticDecorator.java:1000)\ at org.eclipse.emf.edit.ui.provider.DiagnosticDecorator$DiagnosticAdapter.notifyChanged(DiagnosticDecorator.java:223)\ at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)\ at org.eclipse.emf.ecore.resource.impl.ResourceImpl$ContentsEList.loaded(ResourceImpl.java:477)\ at org.eclipse.emf.ecore.resource.impl.ResourceImpl$ContentsEList.didAdd(ResourceImpl.java:438)\ at org.eclipse.emf.common.util.BasicEList.addUnique(BasicEList.java:419)\ at org.eclipse.emf.common.notify.impl.NotifyingListImpl.doAddUnique(NotifyingListImpl.java:325)\ at org.eclipse.emf.common.notify.impl.NotifyingListImpl.addUnique(NotifyingListImpl.java:282)\ at org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:303)\ at org.eclipse.ocl.examples.xtext.base.cs2as.CS2PivotConversion.installRootElement(CS2PivotConversion.java:761)\ at org.eclipse.ocl.examples.xtext.base.cs2as.CS2PivotConversion.installRootContents(CS2PivotConversion.java:720)\ at org.eclipse.ocl.examples.xtext.base.cs2as.CS2PivotConversion.update(CS2PivotConversion.java:1291)\ at org.eclipse.ocl.examples.xtext.base.cs2as.CS2Pivot.update(CS2Pivot.java:511)\ at org.eclipse.ocl.examples.xtext.base.utilities.CS2PivotResourceAdapter.refreshPivotMappings(CS2PivotResourceAdapter.java:88)\ at org.eclipse.ocl.examples.xtext.base.utilities.CS2PivotLinker.afterModelLinked(CS2PivotLinker.java:69)\ at org.eclipse.xtext.linking.impl.AbstractCleaningLinker.linkModel(AbstractCleaningLinker.java:49)\ at org.eclipse.xtext.resource.XtextResource.doLinking(XtextResource.java:292)\ at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLinking(LazyLinkingResource.java:88)\ at org.eclipse.ocl.examples.xtext.essentialocl.utilities.EssentialOCLCSResource.doLinking(EssentialOCLCSResource.java:217)\ at org.eclipse.xtext.resource.XtextResource.updateInternalState(XtextResource.java:260)\ at org.eclipse.xtext.resource.XtextResource.updateInternalState(XtextResource.java:250)\ at org.eclipse.xtext.resource.XtextResource.doLoad(XtextResource.java:163)\ at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:81)\ at org.eclipse.ocl.examples.xtext.essentialocl.utilities.EssentialOCLCSResource.doLoad(EssentialOCLCSResource.java:225)\ at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1518)\ at org.eclipse.ocl.examples.pivot.context.AbstractParserContext.createBaseResource(AbstractParserContext.java:72)\ at org.eclipse.ocl.examples.pivot.context.AbstractParserContext.parse(AbstractParserContext.java:121)\ at org.eclipse.ocl.examples.pivot.utilities.PivotUtil.getExpressionInOCL(PivotUtil.java:818)\ at org.eclipse.ocl.examples.pivot.utilities.PivotUtil.getExpressionInOCL(PivotUtil.java:807) ....