storm测试用例backtype.storm.multilang失败,backtype.storm.multilang.nooutputexception异常

bvjxkvbb  于 2021-06-21  发布在  Storm
关注(0)|答案(1)|浏览(352)

我从中克隆了storm源代码的最新版本(master)https://github.com/apache/storm.git. 我使用的是ubuntu 14.02。
但是当我运行“mvntest”命令时,测试过程失败并在backtype.storm.multilang-test处终止。
以下是backtype.storm.multilang-test.xml文件的上下文:

171293 [Thread-1212-1] ERROR b.s.util - Async loop died!
java.lang.RuntimeException: backtype.storm.multilang.NoOutputException: Pipe to subprocess seems to be broken! No output read.
Serializer Exception:

    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:91) ~[classes/:?]
    at backtype.storm.spout.ShellSpout.open(ShellSpout.java:84) ~[classes/:?]
    at backtype.storm.daemon.executor$fn__4594$fn__4609.invoke(executor.clj:559) ~[classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:473) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
171294 [Thread-1212-1] ERROR b.s.d.executor - 
java.lang.RuntimeException: backtype.storm.multilang.NoOutputException: Pipe to subprocess seems to be broken! No output read.
Serializer Exception:

    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:91) ~[classes/:?]
    at backtype.storm.spout.ShellSpout.open(ShellSpout.java:84) ~[classes/:?]
    at backtype.storm.daemon.executor$fn__4594$fn__4609.invoke(executor.clj:559) ~[classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:473) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
171297 [Thread-1221-2] INFO  b.s.d.executor - Preparing bolt 2:(2)
171297 [Thread-1221-2] INFO  b.s.u.ShellProcess - Storm multilang serializer: backtype.storm.multilang.JsonSerializer
171298 [Thread-1203-EventThread] INFO  o.a.c.f.s.ConnectionStateManager - State change: CONNECTED
171300 [Thread-1217-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(13)
171301 [Thread-1217-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(13)
171301 [Thread-1214-__system] INFO  b.s.d.executor - Preparing bolt __system:(-1)
171300 [Thread-1226-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(3)
171302 [Thread-1214-__system] INFO  b.s.d.executor - Prepared bolt __system:(-1)
171302 [Thread-1226-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(3)
171302 [Thread-1228-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(14)
171302 [Thread-1228-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(14)
171300 [Thread-1223-__system] INFO  b.s.d.executor - Preparing bolt __system:(-1)
171304 [Thread-1223-__system] INFO  b.s.d.executor - Prepared bolt __system:(-1)
171304 [Thread-1221-2] ERROR b.s.util - Async loop died!
java.lang.RuntimeException: Error when launching multilang subprocess

    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:87) ~[classes/:?]
    at backtype.storm.task.ShellBolt.prepare(ShellBolt.java:126) ~[classes/:?]
    at backtype.storm.daemon.executor$fn__4664$fn__4677.invoke(executor.clj:755) ~[classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:473) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Caused by: java.io.IOException: Broken pipe
    at java.io.FileOutputStream.writeBytes(Native Method) ~[?:1.7.0_79]
    at java.io.FileOutputStream.write(FileOutputStream.java:345) ~[?:1.7.0_79]
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) ~[?:1.7.0_79]
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) ~[?:1.7.0_79]
    at java.io.DataOutputStream.flush(DataOutputStream.java:123) ~[?:1.7.0_79]
    at backtype.storm.multilang.JsonSerializer.writeString(JsonSerializer.java:96) ~[classes/:?]
    at backtype.storm.multilang.JsonSerializer.writeMessage(JsonSerializer.java:89) ~[classes/:?]
    at backtype.storm.multilang.JsonSerializer.connect(JsonSerializer.java:61) ~[classes/:?]
    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:85) ~[classes/:?]
    ... 5 more
171306 [Thread-1221-2] ERROR b.s.d.executor - 
java.lang.RuntimeException: Error when launching multilang subprocess

    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:87) ~[classes/:?]
    at backtype.storm.task.ShellBolt.prepare(ShellBolt.java:126) ~[classes/:?]
    at backtype.storm.daemon.executor$fn__4664$fn__4677.invoke(executor.clj:755) ~[classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:473) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Caused by: java.io.IOException: Broken pipe
    at java.io.FileOutputStream.writeBytes(Native Method) ~[?:1.7.0_79]
    at java.io.FileOutputStream.write(FileOutputStream.java:345) ~[?:1.7.0_79]
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) ~[?:1.7.0_79]
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) ~[?:1.7.0_79]
    at java.io.DataOutputStream.flush(DataOutputStream.java:123) ~[?:1.7.0_79]
    at backtype.storm.multilang.JsonSerializer.writeString(JsonSerializer.java:96) ~[classes/:?]
    at backtype.storm.multilang.JsonSerializer.writeMessage(JsonSerializer.java:89) ~[classes/:?]
    at backtype.storm.multilang.JsonSerializer.connect(JsonSerializer.java:61) ~[classes/:?]
    at backtype.storm.utils.ShellProcess.launch(ShellProcess.java:85) ~[classes/:?]
    ... 5 more
171308 [Thread-1231-__system] INFO  b.s.d.executor - Preparing bolt __system:(-1)
171308 [Thread-1231-__system] INFO  b.s.d.executor - Prepared bolt __system:(-1)
171309 [Thread-1233-__system] INFO  b.s.d.executor - Preparing bolt __system:(-1)
171310 [Thread-1233-__system] INFO  b.s.d.executor - Prepared bolt __system:(-1)
171315 [Thread-1235-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(15)
171315 [Thread-1203] INFO  b.s.s.a.AuthUtils - Got AutoCreds []
171315 [Thread-1235-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(15)
171315 [Thread-1203] INFO  b.s.d.worker - Reading Assignments.
171316 [Thread-1238-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(16)
171316 [Thread-1238-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(16)
171319 [refresh-active-timer] INFO  b.s.d.worker - All connections are ready for worker 7dea90e5-ca16-4136-a112-88d756cd9014:1028 with id a74f15a4-ce44-4959-89a5-483b4aff164f
171324 [Thread-1203] INFO  b.s.d.worker - Launching receive-thread for 6737d54e-6cc5-4de7-af27-171ba758fb5b:1025
171325 [Thread-1286-worker-receiver-thread-0] INFO  b.s.m.loader - Starting receive-thread: [stormId: test-1-1438588543, port: 1025, thread-id: 0 ]
171325 [Thread-1240-__acker] INFO  b.s.d.executor - Preparing bolt __acker:(4)
171325 [Thread-1240-__acker] INFO  b.s.d.executor - Prepared bolt __acker:(4)
171325 [Thread-1212-1] ERROR b.s.util - Halting process: ("Worker died")
java.lang.RuntimeException: ("Worker died")
    at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:332) [classes/:?]
    at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.6.0.jar:?]
    at backtype.storm.daemon.worker$fn__5151$fn__5152.invoke(worker.clj:532) [classes/:?]
    at backtype.storm.daemon.executor$mk_executor_data$fn__4493$fn__4494.invoke(executor.clj:261) [classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:485) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
171325 [Thread-1221-2] ERROR b.s.util - Halting process: ("Worker died")
java.lang.RuntimeException: ("Worker died")
    at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:332) [classes/:?]
    at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.6.0.jar:?]
    at backtype.storm.daemon.worker$fn__5151$fn__5152.invoke(worker.clj:532) [classes/:?]
    at backtype.storm.daemon.executor$mk_executor_data$fn__4493$fn__4494.invoke(executor.clj:261) [classes/:?]
    at backtype.storm.util$async_loop$fn__643.invoke(util.clj:485) [classes/:?]
    at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]

非常感谢您的帮助。

cvxl0en2

cvxl0en21#

手动安装nodejs后,这个问题就解决了。这个错误是由于ubuntu上不正确的默认nodejs安装造成的。
以下是通过apache storm中所有测试所需的软件列表:
列表项
节点
python
金色后河
ruby(需要安装json模块)
希望这张单子对考试不及格的人有帮助。

相关问题