Support Article
Concurrent modification exception
SA-64199
Summary
ConcurrentModificationException occurs in the REST Service activity.
Error Messages
java.lang.Thread.run(Thread.java:748) [?:1.8.0_131];Caused by: java.util.ConcurrentModificationException; at java.util.HashMap$HashIterator.nextNode(HashMap.java:1437) ~[?:1.8.0_131]; at java.util.HashMap$KeyIterator.next(HashMap.java:1461) ~[?:1.8.0_131]; at java.util.AbstractCollection.addAll(AbstractCollection.java:343) ~[?:1.8.0_131]; at java.util.HashSet.<init>(HashSet.java:119) ~[?:1.8.0_131];
Steps to Reproduce
- Create a REST service to obtain additional details for the work objects.
- In the Service activity, invoke the Apply data transform.
- In data transform, update the work object page.
- Autopopulate one of the properties from the node level data page by Refer to Option.
Root Cause
The issue occurred due to the known limitation of the node level data page copy. Node level pages are not thread-safe. Hence, ConcurrentModification exception occurs when multiple thread-level pages 'refer' to instead of 'copy' from.
Resolution
Perform the following local-change:
Change Data access to 'Copy data from a data page' instead of 'Refer to a data page'.
Published October 10, 2018 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.