ilovesoup / hyracks

Automatically exported from code.google.com/p/hyracks
Apache License 2.0
0 stars 0 forks source link

Joblet.OperatorEnvironmentImpl is not thread-safe #39

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Joblet.OperatorEnvironmentImpl is not thread-safe because access to the 
non-thread-safe HashMap is not synchronized.  This can be fixed by making its 
methods synchronized or using Collections.synchronizedMap().  
java.util.concurrent.ConcurrentHashMap cannot be used because some operator 
implementations store null values, which ConcurrentHashMap does not allow.

Original issue reported on code.google.com by jodarose...@gtempaccount.com on 25 Aug 2011 at 3:41

GoogleCodeExporter commented 9 years ago
Josh,

The thread-unsafe implementation of OperatorEnvironmentImpl is by design. The 
only accessor/mutator of this component are the Activities of an Operator 
instance, and most Operators do not use it concurrently. If a certain operator 
needs concurrent access, it can synchronize on a common Object. Since the 
common usage does not need synchronization, it is not provided by default.

Original comment by vinay...@gmail.com on 25 Aug 2011 at 7:38

GoogleCodeExporter commented 9 years ago
Josh,

Can I go ahead and close this issue?

Original comment by vinay...@gmail.com on 17 Nov 2011 at 9:26

GoogleCodeExporter commented 9 years ago
Yes, you can close it.

Original comment by rosenville@gmail.com on 17 Nov 2011 at 10:55

GoogleCodeExporter commented 9 years ago

Original comment by vinay...@gmail.com on 30 Nov 2011 at 8:27