kafka-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jun Rao (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (KAFKA-691) Fault tolerance broken with replication factor 1
Date Thu, 10 Jan 2013 19:10:13 GMT

     [ https://issues.apache.org/jira/browse/KAFKA-691?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jun Rao resolved KAFKA-691.
---------------------------

       Resolution: Fixed
    Fix Version/s: 0.8
         Assignee: Maxime Brugidou

Thanks for patch v2. Committed to 0.8 by renaming lastTopicMetadataRefresh to lastTopicMetadataRefreshTime
and removing an unused comment.

3.1 Rebalance happens during consumer initialization. It only needs the partition data to
be in ZK and doesn't require all brokers to be up. Of course, if a broker is not up, the consumer
may not be able to consume data from it. ConsumerFetcherManager is responsible for checking
if a partition becomes available again.

3.2 If the partition path changes in ZK, a rebalance will be triggered.
                
> Fault tolerance broken with replication factor 1
> ------------------------------------------------
>
>                 Key: KAFKA-691
>                 URL: https://issues.apache.org/jira/browse/KAFKA-691
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.8
>            Reporter: Jay Kreps
>            Assignee: Maxime Brugidou
>             Fix For: 0.8
>
>         Attachments: KAFKA-691-v1.patch, KAFKA-691-v2.patch
>
>
> In 0.7 if a partition was down we would just send the message elsewhere. This meant that
the partitioning was really more of a "stickiness" then a hard guarantee. This made it impossible
to depend on it for partitioned, stateful processing.
> In 0.8 when running with replication this should not be a problem generally as the partitions
are now highly available and fail over to other replicas. However in the case of replication
factor = 1 no longer really works for most cases as now a dead broker will give errors for
that broker.
> I am not sure of the best fix. Intuitively I think this is something that should be handled
by the Partitioner interface. However currently the partitioner has no knowledge of which
nodes are available. So you could use a random partitioner, but that would keep going back
to the down node.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message