java - 来自 Apache Storm Trident 和 Kafka 集成的 Spout 错误
问题描述
我正在使用 OpaqueTridentKafkaSpout 来使用来自 Kafka 的消息。下面是代码。我忽略max spout pending
了配置,因为这导致相同的 kafka 消息分批到达。
TridentKafkaConfig tridentKafkaConfig = new TridentKafkaConfig(hosts,properties.getProperty("topic", "mytopic"));
tridentKafkaConfig.scheme = new SchemeAsMultiScheme(new StringScheme());
OpaqueTridentKafkaSpout kafkaSpout = new OpaqueTridentKafkaSpout(tridentKafkaConfig);
当 Kafka Spout 启动时,我收到以下错误,但之后运行顺利。
2018-05-29 09:47:21.703 oasutil Thread-9-spout-myspout-Spout-executor [33 33] [错误] 异步循环死了!java.lang.RuntimeException:org.apache.storm.utils.DisruptorQueue.consumeBatchToCursor 的 java.lang.NullPointerException(DisruptorQueue.java:522)~[storm-core-1.2.1.jar:1.2.1] 在 org.apache .storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:487) ~[storm-core-1.2.1.jar:1.2.1] at org.apache.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:74) ~[storm-core-1.2.1.jar:1.2.1] at org.apache.storm.daemon.executor$fn__5043$fn__5056$fn__5109.invoke(executor.clj:861) ~[storm-core-1.2.1 .jar:1.2.1] at org.apache.storm.util$async_loop$fn__557.invoke(util.clj:484) [storm-core-1.2.1.jar:1.2.1] at clojure.lang.AFn。运行(AFn.java:22)[clojure-1.7.0.jar:
对此有何建议?
解决方案
您的堆栈跟踪表明您正在点击https://issues.apache.org/jira/browse/STORM-3046。
推荐阅读
- php - 从 XPath 结果到简单数组。我如何在不使用 foreach (或扫描数组)的情况下做到这一点
- docker - Github 操作 docker 缓存
- javascript - JQuery 函数不尊重被点击的组件
- vba - 使用文件选择器将图像文件从一个位置复制到另一个位置
- mysql - 选择随机记录:SQL 还是 MongoDB 更快?
- sql - SQL 使用查找表替换长案例语句中搜索/替换字符串的硬编码
- cuda - PTX 内核名称修改
- python - 用python发送的smtp电子邮件中“发件人”字段的奇怪显示
- php - Laravel - 加载不同的 .env 文件
- apache-spark - Azure HD Insight - YARN UI 突然没有在 stderr 上显示日志