Closed sundy-li closed 5 years ago
你说的很对~
虽然有些error有fatal的理由, 也最好不要这样做, 而是传error出来给用户自行判断.
我去改
处理了绝大部分, 还有两个地方保留了 fatal.
simple_consumer.go: glog.Fatalf("invalid config: %s", invallidOffsetsStorageConfig)
simple_consumer.go: glog.Fatal("buffers still open??")
第一个是因为, 首先, 这个配置在group consumer生成的时候会返回错误, 所以正常来说走不到这一步. 如果真的到这里了(目前想不到怎么可能), 那这个错误是致命的, 因为offset没地方存储. 如果帮用户默认纠错, 很可能会有误会.
第二个其实也是debug性质的, 我认为代码到不了这里, 万一有fatal, 需要我去debug代码哪里有问题了.
👍
第一个我觉得可以在consumer初始化进行检查,而不要在 运行消费的时候检查,我新建了一个pr,请过目。
谢谢你的PR~
第一个其实我在初始化的时候检查了(今天下午提交的 f72dc1fc0064db5ee9f38de8d56c125fdb12d6c7 里面), 如果配置不对, 直接返回错误, 所以我说"正常说走不到fatal那里".
这个配置只在 GroupConsumer 里面才可以配置, 因为其他的 simple consumer 和 console consumer 其实都不会做 offset commit .
你好,我发现代码里面有很多
glog.Fataf
代码,比如在拉取kafka数据的时候,出现了异常应该是返回异常,而不是在代码里面强制panic示例日志