[jira] [Commented] (KAFKA-9800) [KIP-580] Admin Client Exponential Backoff Implementation

2020-04-03 Thread ASF GitHub Bot (Jira)


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

ASF GitHub Bot commented on KAFKA-9800:
---

d8tltanc commented on pull request #8421: [WIP]KAFKA-9800: [KIP-580] Admin 
Client Exponential Backoff Implementation
URL: https://github.com/apache/kafka/pull/8421
 
 
   Refactored Call Class
   Split retry() and fail()
   Hardcoded the retryBackoffMaxMs for now to pass the existing tests
   
   *More detailed description of your change,
   
   *Summary of testing strategy (including rationale)
   
   
   ### Committer Checklist (excluded from commit message)
   - [ ] Verify design and implementation 
   - [ ] Verify test coverage and CI build status
   - [ ] Verify documentation (including upgrade notes)
   
 

This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [KIP-580] Admin Client Exponential Backoff Implementation
> -
>
> Key: KAFKA-9800
> URL: https://issues.apache.org/jira/browse/KAFKA-9800
> Project: Kafka
>  Issue Type: New Feature
>Reporter: Cheng Tan
>Assignee: Cheng Tan
>Priority: Major
>  Labels: KIP-580
>
> In {{KafkaAdminClient}}, we will have to modify the way the retry backoff is 
> calculated for the calls that have failed and need to be retried. >From the 
> current static retry backoff, we have to introduce a mechanism for all calls 
> that upon failure, the next retry time is dynamically calculated.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (KAFKA-9800) [KIP-580] Admin Client Exponential Backoff Implementation

2020-04-02 Thread Cheng Tan (Jira)


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

Cheng Tan commented on KAFKA-9800:
--

Some thoughts:

 

*Call*

 

 

 

retry(failedCallRetryContext){

failedRetryContext = failedCall.getRetryContext;

this.retryContext.update(failedRetryContext)

 _if_ (tries > maxRetries) {

   failWithTimeout(now, throwable);

    _return_;

} else {

 

}

}

 

getRetryContext(){

return retryContext

}

 

getNextAllowTryMS{

 

}

 

 

*Retry context*

 

getNextAllowTryMs() {

return nextAllowTryMs;

}

 

getNumTry() {

return numTry

}

 

updateNextAllowTryMs(currentAllowTryMs) {

 
|MIN(retry.backoff.max.ms, (retry.backoff.ms * 2**(failures - 1)) * random(0.8, 
1.2))|

 

}

 

updateNumTry(currentNumTry) {

 

numTry = currentNumTry++;

 

}

 

updateRetryContext(failedCallRetryContext){
 updateNextAllowTryMs(failedCallRetryContext.getNextAllowTryMs)

updateNumTry(failedCallRetryContext.getNumTry)

}

> [KIP-580] Admin Client Exponential Backoff Implementation
> -
>
> Key: KAFKA-9800
> URL: https://issues.apache.org/jira/browse/KAFKA-9800
> Project: Kafka
>  Issue Type: New Feature
>Reporter: Cheng Tan
>Assignee: Cheng Tan
>Priority: Major
>  Labels: KIP-580
>
> In {{KafkaAdminClient}}, we will have to modify the way the retry backoff is 
> calculated for the calls that have failed and need to be retried. >From the 
> current static retry backoff, we have to introduce a mechanism for all calls 
> that upon failure, the next retry time is dynamically calculated.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)