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

Jun Rao commented on KAFKA-350:
-------------------------------

Thanks for patch v2. Some comments:

20. PartitionMetadata: Could we make getLeaderRequest() private?

21. DefaultEventHandler.partitionAndCollate(): Is it necessary for this method 
to return an Option? It seems that if this method hits any exception, it's 
simpler to just pass on the exception and let the caller deal with it. 

22. LogSegment: Ideally this class should only deal with offsets local to the 
segment. Global offsets are only used at the Log level. So it's probably better 
to use local offset in the input of truncateUpto(). Similarly, we probably 
don't need endOffset since it returns global offset. If we do want to keep it, 
it probably should be named globalEndOffset.

23. Log: Since we removed the HW check in FileMessageSet.read. We will need to 
add a guard in Log.read() so that we only expose messages up to HW to the 
consumer.

24. LogManager: remove unused import

25. ControllerChannelManager.removeBroker: the error message is not correct 
since this method is called in places other than shutdown too.

26. system_test/single_host_multi_brokers/bin/run-test.sh: We should remove 
comments saying "If KAFKA-350 is fixed".

27. Unit tests pass on my desktop but fail on my laptop at the following test 
consistently. Without the patch, unit tests pass on my laptop too. This seems 
to be due to the change in ZooKeeperTestHarness.
[info] Test Starting: testFetcher(kafka.consumer.FetcherTest)
[error] Test Failed: testFetcher(kafka.consumer.FetcherTest)
org.I0Itec.zkclient.exception.ZkTimeoutException: Unable to connect to 
zookeeper server within timeout: 2000
        at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:876)
        at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:98)
        at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:84)
        at 
kafka.zk.ZooKeeperTestHarness$class.setUp(ZooKeeperTestHarness.scala:31)
        at 
kafka.consumer.FetcherTest.kafka$integration$KafkaServerTestHarness$$super$setUp(FetcherTest.scala:35)
        at 
kafka.integration.KafkaServerTestHarness$class.setUp(KafkaServerTestHarness.scala:35)
        at kafka.consumer.FetcherTest.setUp(FetcherTest.scala:57)

                
> Enable message replication in the presence of controlled failures
> -----------------------------------------------------------------
>
>                 Key: KAFKA-350
>                 URL: https://issues.apache.org/jira/browse/KAFKA-350
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.8
>            Reporter: Neha Narkhede
>            Assignee: Neha Narkhede
>         Attachments: kafka-350-v1.patch, kafka-350-v2.patch
>
>
> KAFKA-46 introduced message replication feature in the absence of server 
> failures. This JIRA will improve the log recovery logic and fix other bugs to 
> enable message replication to happen in the presence of controlled server 
> failures

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to