[ https://issues.apache.org/jira/browse/KAFKA-8058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Randall Hauch updated KAFKA-8058: --------------------------------- Fix Version/s: 2.2.1 2.1.2 2.3.0 2.0.2 > ConnectRestExtensionContext does not return list of connectors from its > ConnectClusterState > ------------------------------------------------------------------------------------------- > > Key: KAFKA-8058 > URL: https://issues.apache.org/jira/browse/KAFKA-8058 > Project: Kafka > Issue Type: Bug > Components: KafkaConnect > Affects Versions: 2.0.0, 2.0.1, 2.1.0, 2.1.1 > Reporter: Chris Egerton > Assignee: Chris Egerton > Priority: Major > Fix For: 2.0.2, 2.3.0, 2.1.2, 2.2.1 > > > Title is not entirely accurate, but describes the most common way this bug > presents itself. > The > [ConnectClusterStateImpl|https://github.com/apache/kafka/blob/ab00c51b6362b41071ae32611ebf698ba9c221ee/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/health/ConnectClusterStateImpl.java] > used by Kafka Connect to provide cluster information to REST extensions > makes an asynchronous call to > [Herder.connectors(...)|https://github.com/apache/kafka/blob/ab00c51b6362b41071ae32611ebf698ba9c221ee/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/Herder.java#L70] > in its > [connectors()|https://github.com/apache/kafka/blob/ab00c51b6362b41071ae32611ebf698ba9c221ee/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/health/ConnectClusterStateImpl.java#L46] > method that populates a list of connector names, then immediately returns > that list of connector names. If the list is read soon after it is returned, > it's possible it will be empty or at least not completely populated. > Since the method is implicitly synchronous (no callback logic is involved in > its parameters or return values, and there is no documentation indicating > asynchronous behavior for the > [ConnectClusterState.connectors()|https://github.com/apache/kafka/blob/ab00c51b6362b41071ae32611ebf698ba9c221ee/connect/api/src/main/java/org/apache/kafka/connect/health/ConnectClusterState.java#L28-L34] > method), this should be remedied by adding a wait for the > Herder.connectors(...) method to complete in the > ConnectClusterStateImpl.connectors() method. -- This message was sent by Atlassian JIRA (v7.6.3#76005)