Antti Järvinen created STORM-2331:
-------------------------------------

             Summary: Anchoring emit in JavaScript bolt only works with one 
anchor
                 Key: STORM-2331
                 URL: https://issues.apache.org/jira/browse/STORM-2331
             Project: Apache Storm
          Issue Type: Bug
          Components: storm-multilang
            Reporter: Antti Järvinen


org.apache.storm.task.ShellBolt.handleEmit method expects to find list of tuple 
ids from the message to anchor the emit to.

The storm.js function __emit can only handle case of specifying exactly one 
anchor. If none is specified the message will contain anchor list [undefined] 
and if multiple anchors are specified the message will contain nested anchor 
list [["anchor1", "anchor2"]].

In the case of not anchoring to any the ShellBolt will throw runtime exception 
when ConcurrentHashMap tries to call .hashCode() on null. In the case of 
multiple anchors the ShellBolt will throw an error of "Anchored onto anchorId 
after ack/fail".

The fix should be made in storm.js



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to