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

David Jacot updated KAFKA-13033:
--------------------------------
    Priority: Blocker  (was: Major)

> coordinator not available error should cause add into unmap list to do a new 
> lookup
> -----------------------------------------------------------------------------------
>
>                 Key: KAFKA-13033
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13033
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 3.0.0
>            Reporter: Luke Chen
>            Assignee: Luke Chen
>            Priority: Blocker
>             Fix For: 3.0.0
>
>
> In KIP-699, we add some handler to handle different types of operation. In 
> the `handleError`, we didn't make the `COORDINATOR_NOT_AVAILABLE` as 
> unmapped, to do a re-lookup. In 
> [DescribeTransactionsHandler|https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/admin/internals/DescribeTransactionsHandler.java#L172-L186],
>  there's already explained by [~hachikuji] why `COORDINATOR_NOT_AVAILABLE` 
> and `NOT_COORDINATOR` should be listed in unmapped, and 
> `COORDINATOR_LOAD_IN_PROGRESS` should not.
>  
> {code:java}
> case COORDINATOR_LOAD_IN_PROGRESS:
>     // If the coordinator is in the middle of loading, then we just need to 
> retry
>     log.debug("DescribeTransactions request for transactionalId `{}` failed 
> because the " +
>             "coordinator is still in the process of loading state. Will 
> retry",
>         transactionalIdKey.idValue);
>     break;
> case NOT_COORDINATOR:
> case COORDINATOR_NOT_AVAILABLE:
>     // If the coordinator is unavailable or there was a coordinator change, 
> then we unmap
>     // the key so that we retry the `FindCoordinator` request
>     unmapped.add(transactionalIdKey);
>     log.debug("DescribeTransactions request for transactionalId `{}` returned 
> error {}. Will attempt " +
>             "to find the coordinator again and retry", 
> transactionalIdKey.idValue, error);
>     break;
> {code}
> We should be consistent with it. Fix it, add logs and comments, and also 
> update the tests.
>  
>  
>  



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

Reply via email to