lovoo / goka

Goka is a compact yet powerful distributed stream processing library for Apache Kafka written in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question: Goka compatibility with Kafka 3.3.1 (KRaft)

Derek-Hardy opened this issue · comments

Setups

Goka: 1.1.7, Sarama v1.37.2

Kafka: 3.3.1 (in KRaft mode)

Cluster config: num.partitions=2, default.replication.factor=3, number of brokers=3

Problem description

The TopicManager can successfully create topics on the newly created KRaft Kafka cluster. However, the following error occurs:

"Error: 1 error occurred:
  * error setting up (partition=0): Setup failed. Cannot start processor for partition 0: 1 error occurred:
  * kafka tells us there's no message in the topic, but our cache has one. The table might be gone. Try to delete your local cache! Topic p3-p3-dev-6-procs-group-table, partition 0, hwm 0, local offset 6350632"

Tried to remove the cache file stored under storagePath ,

goka.WithStorageBuilder(storage.CachedStorageBuilder(10000, storagePath, nil))

which contains:

p3-p3-dev-6-procs-group-table.0
   000022.log  CURRENT  CURRENT.bak  LOCK  LOG  MANIFEST-000023
p3-p3-dev-6-procs-group-table.1
   000030.log  CURRENT  CURRENT.bak  LOCK  LOG  MANIFEST-000031

and restarted the service , but it did not resolve the issue. The local offset always seem to have an unreasonable number.

Topic detail

Topic: p3-p3-dev-6-procs-group-table    TopicId: sS43h6seRae2Bk3umNsBBA PartitionCount: 2       ReplicationFactor: 3    Configs: segment.bytes=1073741824
        Topic: p3-p3-dev-6-procs-group-table    Partition: 0    Leader: 2       Replicas: 2,3,1 Isr: 2,3,1
        Topic: p3-p3-dev-6-procs-group-table    Partition: 1    Leader: 3       Replicas: 3,1,2 Isr: 3,1,2
$ ./bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic p3-p3-dev-6-procs-group-table
p3-p3-dev-6-procs-group-table:0:0
p3-p3-dev-6-procs-group-table:1:0

Questions

  1. Any further advice on determining whether the issue falls on our service side or goka incompatibility?

  2. If goka is not compatible with KRaft cluster (no Zookeeper) yet, is there a foreseeable timeline on its support?

P.S.

Will the blog post be back again? The Link is currently deleted: https://lovoodotblog.wordpress.com/2017/05/23/goka/

Hi @Derek-Hardy,

Not sure if you have found a solution for the case you described a while ago. Just in case, I would like to share this in case you feel it can be related. (although you seem to have pretty clear that it might be related to KRaft, so maybe what I'm sharing it's not related)

Btw, I don't know where it was leading to the link you mentioned. What I have found is interesting info in the wiki section of the repo: https://github.com/lovoo/goka/wiki