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

Neha Narkhede commented on KAFKA-351:
-------------------------------------

Thanks for incorporating review suggestions!

2.3 Agreed that it is a bit of work to get meaningful error codes in the 
client. Often this is ignored, but client contract should be very well thought 
out and easy to understand. It is best if we give the most descriptive error 
code, but if we feel it takes significant amount of work, we can start with a 
simple solution. We went through a pretty detailed review of the new request 
formats, but not error codes. It will be good to go through this before the 
release.

5.1 That change is correct. However, in Replica.scala, highWatermarkValue and 
logEndOffsetValue are synchronized via AtomicLong, but not 
logEndOffsetUpdateTime. Right now, like you said, there is only one API that 
updates/reads logEndOffsetUpdateTime and it synchronizes those accesses. But 
since these are Replica APIs, I'm pretty sure there will be more places in the 
code that will either update or read the logEndOffset/logEndOffsetUpdateTime 
and each of those APIs would have to synchronize those accesses. For what it's 
worth, changing it to AtomicLong actually protects us from future 
synchronization errors and is not much of a performance hit as well. 

8. HighwatermarkPersistenceTest. Fix fail error message to say KafkaException 
instead of IllegalStateException. I forgot to do this in my patch when I added 
this test, it will be great if you can include this minor change.

9. Minor comment - Probably better to rename UnknownTopicPartition to 
UnknownTopicOrPartitionException.

                
> Refactor some new components introduced for replication 
> --------------------------------------------------------
>
>                 Key: KAFKA-351
>                 URL: https://issues.apache.org/jira/browse/KAFKA-351
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.8
>            Reporter: Neha Narkhede
>            Assignee: Jun Rao
>              Labels: optimization
>             Fix For: 0.8
>
>         Attachments: kafka-351_v1.patch, kafka-351_v2.patch, 
> kafka-351_v3.patch, kafka-351_v4.patch, kafka-351_v5.patch
>
>
> Jay had some good refactoring suggestions as part of the review for KAFKA-46. 
> I'd like to file this umbrella JIRA with individual sub tasks to cover those 
> suggestions

--
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