Uploaded image for project: 'Apache Storm'
  1. Apache Storm
  2. STORM-796

The "error" command isn't supported on ShellSpout

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.9.4
    • Fix Version/s: 0.9.5
    • Component/s: storm-multilang
    • Labels:
      None

      Description

      The `ShellBolt` can handle the "error" command, as shown in this file in Storm source code:

      https://github.com/apache/storm/blob/2dd7a9426e5634211f14cf5c4e10e021d3420c3c/storm-core/src/jvm/backtype/storm/task/ShellBolt.java#L330

      But, `ShellSpout` does not actually have a handler for "error".

      https://github.com/apache/storm/blob/2dd7a9426e5634211f14cf5c4e10e021d3420c3c/storm-core/src/jvm/backtype/storm/spout/ShellSpout.java#L153-L175

      The symptoms a multi-lang user will see here is that if their Spout throws an error and their multi-lang implementation sends an "error" command up to the ShellSpout, the ShellSpout will respond saying that it doesn't recognize the "error" command, and thus it will crash (while swallowing the exception thrown by the underlying multi-lang component).

      I am about to open a PR on Github that fixes this.

      Originally reported on the streamparse project in this Github issue:

      https://github.com/Parsely/streamparse/issues/121

        Attachments

          Activity

            People

            • Assignee:
              amontalenti Andrew Montalenti
              Reporter:
              amontalenti Andrew Montalenti
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: