kafka调用seek方法后调用subscribe方法报错
程序员文章站
2022-07-15 12:21:31
...
在使用kafka的时候,需要自己手动设置offset,于是在subscribe后调用seek方法,程序直接抛出异常:No current assignment for partition。通过搜索引擎搜了下,很多说是由于同一个 groupID 在同一时刻多次消费同一个 topic,引发 offset 记录问题。但在这里很明显不是。
seek正确的调用姿势应该是在调用subscribe的时候,添加一个回调函数:
consumer.subscribe(Arrays.asList(topic), new ConsumerRebalanceListener() {
@Override
public void onPartitionsRevoked(Collection<TopicPartition> collection) {
}
@Override
public void onPartitionsAssigned(Collection<TopicPartition> collection) {
consumer.seek(collection, 100);// consumer.seek(new TopicPartition("topic", 0), 100);
}
});
上一篇: [email protected]使用报错:Mapped Statements collection does not contain value for XXX
下一篇: 编写程序: 从键盘上输入一个整数x,判断其奇偶性;当x满足 x%2==0(即x是2的倍数)时,输出x是偶数;反之,输出x是奇数(x为具体的数值)。
推荐阅读
-
解决C#中调用WCF方法报错:远程服务器返回错误 (404) 未找到
-
微信小程序之支付后调用SDK的异步通知及验证处理订单方法
-
解决DialogFragment调用show方法报错问题
-
electron 调用方法报错、绑定事件报错、css报错
-
kafka调用seek方法后调用subscribe方法报错
-
c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错
-
PHP调用MYSQL存储过程 不报错的解决方法
-
避免 Hibernate 中用get/load方法获取的实体调用set方法后自动更新
-
通过工厂模式批量创建对象后调用其中方法 出现XXXis not a function()问题原因
-
js定时调用方法成功后并停止调用示例_javascript技巧