Jungtaek Lim created STORM-841:
----------------------------------
Summary: Thread-safeness of OutputCollector has documented
contrary to two official doc.
Key: STORM-841
URL: https://issues.apache.org/jira/browse/STORM-841
Project: Apache Storm
Issue Type: Documentation
Reporter: Jungtaek Lim
Priority: Critical
There're some issues with documentation.
http://storm.apache.org/documentation/Concepts.html says
{quote}
Its perfectly fine to launch new threads in bolts that do processing
asynchronously. OutputCollector is thread-safe and can be called at any time.
{quote}
and http://storm.apache.org/documentation/Troubleshooting.html says
{quote}
This is caused by having multiple threads issue methods on the OutputCollector.
All emits, acks, and fails must happen on the same thread. One subtle way this
can happen is if you make a IBasicBolt that emits on a separate thread.
IBasicBolt's automatically ack after execute is called, so this would cause
multiple threads to use the OutputCollector leading to this exception. When
using a basic bolt, all emits must happen in the same thread that runs execute.
{quote}
It is a contradiction, and at least for now OutputCollector is not thread-safe.
https://www.mail-archive.com/[email protected]/msg00939.html
Since newbie of Storm users may think Concepts page as "should read and keep it
mind", it is some kind of critical that that such important documentation page
has wrong content.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)