You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Ewen Cheslack-Postava (JIRA)" <ji...@apache.org> on 2016/11/14 04:36:58 UTC

[jira] [Commented] (KAFKA-3959) __consumer_offsets wrong number of replicas at startup

    [ https://issues.apache.org/jira/browse/KAFKA-3959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15662738#comment-15662738 ] 

Ewen Cheslack-Postava commented on KAFKA-3959:
----------------------------------------------

[~granthenke] [~onurkaraman] [~toddpalino] Any more thoughts on this? I think the main use case for handling < 3 brokers by default is when we start up a "cluster" locally for test purposes. Any real use case that wanted a lower replication factor could set it explicitly. This is pretty important and we don't really want to have users jump through hoops to do so; that said, a dramatic warning wouldn't be the end of the world. Maybe even some combination of a low setting plus a setting that gives unsafe warnings but allows unsafely low replication factors for this topic?

> __consumer_offsets wrong number of replicas at startup
> ------------------------------------------------------
>
>                 Key: KAFKA-3959
>                 URL: https://issues.apache.org/jira/browse/KAFKA-3959
>             Project: Kafka
>          Issue Type: Bug
>          Components: consumer, offset manager, replication
>    Affects Versions: 0.9.0.1, 0.10.0.0
>         Environment: Brokers of 3 kafka nodes running Red Hat Enterprise Linux Server release 7.2 (Maipo)
>            Reporter: Alban Hurtaud
>
> When creating a stack of 3 kafka brokers, the consumer is starting faster than kafka nodes and when trying to read a topic, only one kafka node is available.
> So the __consumer_offsets is created with a replication factor set to 1 (instead of configured 3) :
> offsets.topic.replication.factor=3
> default.replication.factor=3
> min.insync.replicas=2
> Then, other kafka nodes go up and we have exceptions because the replicas # for __consumer_offsets is 1 and min insync is 2. So exceptions are thrown.
> What I missed is : Why the __consumer_offsets is created with replication to 1 (when 1 broker is running) whereas in server.properties it is set to 3 ?
> To reproduce : 
> - Prepare 3 kafka nodes with the 3 lines above added to servers.properties.
> - Run one kafka,
> - Run one consumer (the __consumer_offsets is created with replicas =1)
> - Run 2 more kafka nodes



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)