kafka-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Olson" <aols...@cerner.com>
Subject Re: Review Request 17537: Patch for KAFKA-1028
Date Mon, 03 Mar 2014 20:37:29 GMT


> On March 3, 2014, 7:03 p.m., Guozhang Wang wrote:
> > core/src/main/scala/kafka/server/ReplicaFetcherThread.scala, line 86
> > <https://reviews.apache.org/r/17537/diff/3/?file=456708#file456708line86>
> >
> >     I am not sure we need to check the unclean election flag here. If we can keep
the partition as offline for clients in the controller phase, will that be sufficient since
no data will be appended/consumed from these replica logs until that is unblocked?
> >     
> >     As for reading the configs, I agree that if we consider per-topic configs then
we probably need to read it from ZK.

Yes, under normal circumstances the partition would be kept offline until the previous leader
is available, which would be sufficient to prevent log truncation from ever being considered.
This code was added as an extra safeguard to handle the remote possibility of the config being
changed while a replica is offline, which I believe is the only way this code path could be
reached. I tried to describe this in the comment below: "This situation could only happen
if the unclean election configuration for a topic changes while a replica is down. Otherwise,
we should never encounter this situation since a non-ISR leader cannot be elected if disallowed
by the broker configuration."

In the follow-up patch I'll move this comment above the AdminUtils check so that it's more
visible.


- Andrew


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17537/#review35999
-----------------------------------------------------------


On Jan. 30, 2014, 7:45 p.m., Andrew Olson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17537/
> -----------------------------------------------------------
> 
> (Updated Jan. 30, 2014, 7:45 p.m.)
> 
> 
> Review request for kafka.
> 
> 
> Bugs: KAFKA-1028
>     https://issues.apache.org/jira/browse/KAFKA-1028
> 
> 
> Repository: kafka
> 
> 
> Description
> -------
> 
> KAFKA-1028: per topic configuration of preference for consistency over availability
> 
> 
> Diffs
> -----
> 
>   core/src/main/scala/kafka/admin/AdminUtils.scala a167756f0fd358574c8ccb42c5c96aaf13def4f5

>   core/src/main/scala/kafka/common/NoReplicaOnlineException.scala a1e12794978adf79020936c71259bbdabca8ee68

>   core/src/main/scala/kafka/controller/KafkaController.scala a0267ae2670e8d5f365e49ec0fa5db1f62b815bf

>   core/src/main/scala/kafka/controller/PartitionLeaderSelector.scala fd9200f3bf941aab54df798bb5899eeb552ea3a3

>   core/src/main/scala/kafka/log/LogConfig.scala 0b32aeeffcd9d4755ac90573448d197d3f729749

>   core/src/main/scala/kafka/server/KafkaConfig.scala 3c3aafc2b3f06fc8f3168a8a9c1e0b08e944c1ef

>   core/src/main/scala/kafka/server/ReplicaFetcherThread.scala 73e605eb31bc71642d48b0bb8bd1632fd70b9dca

>   core/src/test/scala/unit/kafka/integration/RollingBounceTest.scala b585f0ec0b1c402d95a3b34934dab7545dcfcb1f

>   core/src/test/scala/unit/kafka/integration/UncleanLeaderElectionTest.scala PRE-CREATION

>   core/src/test/scala/unit/kafka/server/KafkaConfigTest.scala 89c207a3f56c7a7711f8cee6fb277626329882a6

>   core/src/test/scala/unit/kafka/utils/TestUtils.scala 426b1a7bea1d83a64081f2c6b672c88c928713b7

> 
> Diff: https://reviews.apache.org/r/17537/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Andrew Olson
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message