Github user HeartSaVioR commented on the pull request:
https://github.com/apache/storm/pull/525#issuecomment-94240470
You can temporary change multilang_test.clj to make spout -> bolt -> bolt
topology.
```clojure
(defn test-multilang
[executor file-extension]
(with-local-cluster [cluster :supervisors 4]
(let [nimbus (:nimbus cluster)
topology (thrift/mk-topology
{"1" (thrift/mk-shell-spout-spec [executor (str
"tester_spout." file-extension)] ["word"])}
{"2" (thrift/mk-shell-bolt-spec {"1" :shuffle} [executor
(str "tester_bolt." file-extension)] ["word"] :parallelism-hint 1)
"3" (thrift/mk-shell-bolt-spec {"2" :local-or-shuffle}
[executor (str "tester_bolt." file-extension)] ["word"] :parallelism-hint 1)})]
(submit-local-topology nimbus
"test"
{TOPOLOGY-WORKERS 20 TOPOLOGY-MESSAGE-TIMEOUT-SECS 3
TOPOLOGY-DEBUG true}
topology)
(Thread/sleep 10000)
(.killTopology nimbus "test")
(Thread/sleep 10000)
)))
```
Here's Spout.
```
{
"task->component":{
"20":"__acker",
"21":"__acker",
"22":"__acker",
"23":"__acker",
"1":"1",
"3":"3",
"2":"2",
"5":"__acker",
"4":"__acker",
"7":"__acker",
"6":"__acker",
"9":"__acker",
"8":"__acker",
"11":"__acker",
"10":"__acker",
"13":"__acker",
"12":"__acker",
"15":"__acker",
"14":"__acker",
"17":"__acker",
"16":"__acker",
"19":"__acker",
"18":"__acker"
},
"stream->target->grouping":{
"default":{
"2":"SHUFFLE"
}
},
"streams":[
"default"
],
"stream->outputfields":{
"default":[
"word"
]
},
"taskid":1,
"source->stream->grouping":{
},
"componentid":"1"
}
```
Bolt 1.
```
{
"task->component":{
"20":"__acker",
"21":"__acker",
"22":"__acker",
"23":"__acker",
"1":"1",
"3":"3",
"2":"2",
"5":"__acker",
"4":"__acker",
"7":"__acker",
"6":"__acker",
"9":"__acker",
"8":"__acker",
"11":"__acker",
"10":"__acker",
"13":"__acker",
"12":"__acker",
"15":"__acker",
"14":"__acker",
"17":"__acker",
"16":"__acker",
"19":"__acker",
"18":"__acker"
},
"stream->target->grouping":{
"default":{
"3":"LOCAL_OR_SHUFFLE"
}
},
"streams":[
"default"
],
"stream->outputfields":{
"default":[
"word"
]
},
"taskid":2,
"source->stream->grouping":{
"1":{
"default":"SHUFFLE"
}
},
"componentid":"2"
}
```
Bolt 2.
```
{
"task->component":{
"20":"__acker",
"21":"__acker",
"22":"__acker",
"23":"__acker",
"1":"1",
"3":"3",
"2":"2",
"5":"__acker",
"4":"__acker",
"7":"__acker",
"6":"__acker",
"9":"__acker",
"8":"__acker",
"11":"__acker",
"10":"__acker",
"13":"__acker",
"12":"__acker",
"15":"__acker",
"14":"__acker",
"17":"__acker",
"16":"__acker",
"19":"__acker",
"18":"__acker"
},
"stream->target->grouping":{
},
"streams":[
"default"
],
"stream->outputfields":{
"default":[
"word"
]
},
"taskid":3,
"source->stream->grouping":{
"2":{
"default":"LOCAL_OR_SHUFFLE"
}
},
"componentid":"3"
}
```
Looks really fine.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---