AToMPM crashes when deleting an element which is no longer typed.
- Dominant language
- JavaScript
- Stars
- 25
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
opened 10 months ago by claudio
###Claudio
Consider the following scenario: I create a metamodel, and then I create some model, to try it out. Then I change the metamodel, removing some type X. When I go back to the created model, after reloading the toolbar, if I delete any element of type X, AToMPM crashes hard (I need to restart the server...).
Can AToMPM just tolerate the removal of an untyped element? This is probably due to a failed lookup.
### Simon
Ah... language evolution :) Not an easy problem at all (refer to my master thesis for more information). I do understand it's frustrating, but you cannot expect this to be fixed easily. You're welcome to take a look though, there is indeed an infinite loop while trying to execute event handlers in mmmk.js at line 810.
The best solution would be to remove any elements that no longer have a type when loading the element. But again, it's probably not that easy.
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the metamodel/model scenario described in the issue, then inspect mmmk.js around line 810 where event handlers enter an infinite loop. Trace the failed type lookup during deletion or loading, and consider the stated goal of tolerating elements whose type was removed; done means the server no longer crashes or requires a restart.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100