Community
Participate
Working Groups
We have received a report that starting with VIATRA 2.0 some transformation began throwing ConcurrentModificationExceptions that worked fine previously. A deeper look has shown that the exception is only thrown when conflicting rule activations are fired in one go. java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442) at java.util.HashMap$KeyIterator.next(HashMap.java:1466) at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1042) at org.eclipse.viatra.transformation.evm.api.Executor.execute(Executor.java:46) at org.eclipse.viatra.transformation.runtime.emf.transformation.batch.BatchTransformationStatements.fireAllCurrent(BatchTransformationStatements.java:310) at org.eclipse.viatra.transformation.runtime.emf.transformation.batch.BatchTransformationStatements.fireAllCurrent(BatchTransformationStatements.java:161)
New Gerrit change created: https://git.eclipse.org/r/125922
Gerrit change https://git.eclipse.org/r/125922 was merged to [master]. Commit: http://git.eclipse.org/c/viatra/org.eclipse.viatra.git/commit/?id=41eb8c597738e90e12b1399e8341a3121cb92708
New Gerrit change created: https://git.eclipse.org/r/125945
The API documentation of conflict resolvers were updated and all relevant conflict resolvers were hardened against this kind of leaking internal information. The fix is merged into master and backported to 2.0-maintenance with appropriate tests.
Gerrit change https://git.eclipse.org/r/125945 was merged to [2.0-maintenance]. Commit: http://git.eclipse.org/c/viatra/org.eclipse.viatra.git/commit/?id=dba5a5b6b1212392cf0e32ee77b4e8fc783b17b8
New Gerrit change created: https://git.eclipse.org/r/127225
Gerrit change https://git.eclipse.org/r/127225 was merged to [master]. Commit: http://git.eclipse.org/c/viatra/org.eclipse.viatra.git/commit/?id=2ba32823199db8584b398db108498e7a9070fd1d
New Gerrit change created: https://git.eclipse.org/r/127243
Gerrit change https://git.eclipse.org/r/127243 was merged to [2.0-maintenance]. Commit: http://git.eclipse.org/c/viatra/org.eclipse.viatra.git/commit/?id=fca20e031a6384fb53470671a53e8458b28d0489