Luke Chen created KAFKA-15507:
---------------------------------

             Summary: adminClient should not throw retriable exception when 
closing instance
                 Key: KAFKA-15507
                 URL: https://issues.apache.org/jira/browse/KAFKA-15507
             Project: Kafka
          Issue Type: Bug
          Components: admin
    Affects Versions: 3.5.1
            Reporter: Luke Chen


When adminClient is closing the instance, it'll first set `hardShutdownTimeMs` 
to a positive timeout value, and then wait until existing threads to complete 
within the timeout. However, within this waiting, when new caller tries to 
invoke new commend in adminClient, it'll immediately get an 


{code:java}
TimeoutException("The AdminClient thread is not accepting new calls.")
{code}

There are some issues with the design:
1. Since the `TimeoutException` is a retriable exception, the caller will enter 
a tight loop and keep trying it
2. The error message is confusing. What does "the adminClient is not accepting 
new calls" mean?

We should improve it by throwing a non-retriable error (ex: 
IllegalStateException), then, the error message should clearly describe the 
adminClient is closing.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to