Jan Burkhardt created KAFKA-5600:
------------------------------------

             Summary: GroupMetadataManager doesn't read Offsets of segmented 
log correctly
                 Key: KAFKA-5600
                 URL: https://issues.apache.org/jira/browse/KAFKA-5600
             Project: Kafka
          Issue Type: Bug
          Components: core
    Affects Versions: 0.11.0.0, 0.10.2.0
         Environment: any
            Reporter: Jan Burkhardt
         Attachments: KafkaErrorConsumer.java, KafkaErrorProducer.java

After long investigation we found a Problem in Kafka.
When a __consumer_offsets partition gets segmented and Kafka is restarted and 
needs to reload offsets it starts at a wrong position

Reproduction:
1.) Start zookeeper and kafka as is from the archive
{code}
KAFKA_HEAP_OPTS="-Xmx256M -Xms256M" bin/zookeeper-server-start.sh 
config/zookeeper.properties
KAFKA_HEAP_OPTS="-Xmx256M -Xms256M" bin/kafka-server-start.sh 
config/server.properties
{code}
2.) Start [^KafkaErrorProducer.java] which adds 1M log entries to the topic test
3.) Start [^KafkaErrorConsumer.java] which starts a consumer, reads 100 entries 
one by one and then closes the consumer. This leads to a 2nd segment in 
__consumer_offsets-27
4.) Stop and restart the Kafka broker
5.) Start any consumer on topic test and group testgroup
{code}
bin/kafka-console-consumer.sh --from-beginning --bootstrap-server 
localhost:9092 --topic test --consumer-property group.id=testgroup
{code}

Is:
the consumer starts at the segmentation boundary
Expected:
the consumer starts at the end

The Reason for this behavior is the closing brace of the while loop in 
GroupMetadataManager#loadGroupsAndOffsets





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to