Community
Participate
Working Groups
After disposing and recreating an observable match set or list: IObservableSet observableSet = ViatraObservables.observeMatchesAsSet(FooMatcher.on(engine)); observableSet.dispose(); observableSet = ViatraObservables.observeMatchesAsSet(FooMatcher.on(engine)); the newly created instance will reuse the disposed RuleEngine of the disposed observable set, therefore firings and hence match set changes will not occur. This is because org.eclipse.viatra.addon.databinding.runtime.collection.ObservableCollectionHelper.getRuleEngine(ViatraQueryEngine) returns the old RuleEngine instance. Disposing the RuleEngine should remove it from the ObservableCollectionHelper.queryToRuleEngineMap cache.
New Gerrit change created: https://git.eclipse.org/r/105632
Gerrit change https://git.eclipse.org/r/105632 was merged to [master]. Commit: http://git.eclipse.org/c/viatra/org.eclipse.viatra.git/commit/?id=d5ade5b10d4855e37928e356a68d72124f23ff0b
Fixed in master.