Edward Zhang created EAGLE-67:
---------------------------------
Summary: Emit immutable object to prevent concurrent modification
Key: EAGLE-67
URL: https://issues.apache.org/jira/browse/EAGLE-67
Project: Eagle
Issue Type: Bug
Reporter: Edward Zhang
Assignee: Edward Zhang
Storm does not guarantee the event one bolts receives is always local to this
bolt, for performance reason, Storm framework may send this event object
directly into a bolt without serialization/deserialization, which means storm
application must be careful with doing mutable operations on the event object
you have received because this event object may be used by other bolt
concurrently.
Storm emit API requires that event object to be emitted should be immutable,
https://storm.apache.org/apidocs/backtype/storm/task/OutputCollector.html
So application should be defensive in emitting and using event object, i.e.
send immutable object and deep copy an event object when you want to modify it.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)