apex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vlad Rozov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (APEXCORE-539) DefaultAttributeMap is not thread safe
Date Thu, 22 Sep 2016 18:06:21 GMT

    [ https://issues.apache.org/jira/browse/APEXCORE-539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15514021#comment-15514021

Vlad Rozov commented on APEXCORE-539:

I see the following exception after I changed DefaultAttributeMap to store and compare thread
with the current thread:
2016-09-22 10:36:46,849 [container-0] ERROR stram.StramLocalCluster run - Container container-0
java.util.ConcurrentModificationException: current thread Thread[container-0,5,main] existing
thread Thread[main,5,main]
	at com.datatorrent.api.Attribute$AttributeMap$DefaultAttributeMap.put(Attribute.java:209)
	at com.datatorrent.stram.engine.StreamingContainer.setup(StreamingContainer.java:160)
	at com.datatorrent.stram.StramLocalCluster$LocalStreamingContainer.run(StramLocalCluster.java:178)
	at com.datatorrent.stram.StramLocalCluster$LocalStramChildLauncher.run(StramLocalCluster.java:269)
	at java.lang.Thread.run(Thread.java:745)

Why not to use ConcurrentHashMap instead of HashMap?

> DefaultAttributeMap is not thread safe
> --------------------------------------
>                 Key: APEXCORE-539
>                 URL: https://issues.apache.org/jira/browse/APEXCORE-539
>             Project: Apache Apex Core
>          Issue Type: Bug
>            Reporter: Vlad Rozov
> DefaultAttributeMap put() and get() methods may be called from different threads and
current implementation that uses HashMap is not thread safe.

This message was sent by Atlassian JIRA

View raw message