Bug 538332 - Thread safe error on the VariableManager
Summary: Thread safe error on the VariableManager
Status: NEW
Alias: None
Product: Sirius
Classification: Modeling
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: triaged
Depends on:
Blocks: 542859
  Show dependency tree
 
Reported: 2018-08-28 06:01 EDT by Hugo Marchadour CLA
Modified: 2019-09-18 08:59 EDT (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 Hugo Marchadour CLA 2018-08-28 06:01:28 EDT
I've this error on Sirius web properties view with an eclipse RCP UI workbench :

java.util.NoSuchElementException
	at java.util.LinkedList.getLast(LinkedList.java:257)
	at org.eclipse.sirius.ext.base.collect.StackEx.peek(StackEx.java:72)
	at org.eclipse.sirius.common.tools.api.interpreter.VariableManager.getVariables(VariableManager.java:81)
	at org.eclipse.sirius.common.acceleo.aql.business.internal.AcceleoAbstractInterpreter.getVariables(AcceleoAbstractInterpreter.java:81)
	at org.eclipse.sirius.common.acceleo.aql.business.internal.AQLSiriusInterpreter.evaluateExpression(AQLSiriusInterpreter.java:209)
	at org.eclipse.sirius.common.acceleo.aql.business.internal.AQLSiriusInterpreter.evaluate(AQLSiriusInterpreter.java:194)
	at org.eclipse.sirius.common.tools.internal.interpreter.AbstractInterpreter.evaluateCollection(AbstractInterpreter.java:54)
	at org.eclipse.sirius.tools.internal.interpreter.SessionInterpreter.evaluateCollection(SessionInterpreter.java:245)

Sometimes, this error come from :
at org.eclipse.sirius.diagram.business.internal.metamodel.helper.DiagramElementMappingHelper.evaluateSemanticElements(DiagramElementMappingHelper.java:189)
Otherwise, from :
at org.eclipse.eef.core.api.utils.EvalFactory$Eval.evaluate(EvalFactory.java:240)
Comment 1 Pierre-Charles David CLA 2018-11-22 02:40:53 EST
Marking as triaged even if there is no reproduction step: I have seem the same kind of semi-random errors several times, and this is clearly something we want to address in a general way in the upcoming versions as concurrent accesses to the interpreter (among other things) will be the new default when in web mode.
Comment 2 Pierre-Charles David CLA 2019-02-07 09:01:56 EST
Work has started on refactoring the interpreters, with this kinds of issues in the scope, but it will take some time to progressively evolve the implementation to get rid of this kind of issues for good. Moving to 6.3, hoping we'll be able to make some real progress on this one in that version.