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

Mickael Maison commented on KAFKA-14746:
----------------------------------------

https://issues.apache.org/jira/browse/KAFKA-14732 describes pretty much the 
same issue. With the exponential backoff we don't spam the logs with errors. 
However it's still kind of unclear what's going on from a user point of view 
without looking at the logs.

If the connector throws in taskConfigs()
* If it's a reconfiguration, the existing tasks keep running (connector and 
tasks show no errors in the REST API)
* If it's the creation of a new connector, the connector is marked as running 
and no tasks are created.

In both cases, the runtime retries reconfiguring it forever. 

> Throwing in Connector.taskConfigs generates a lot of logs
> ---------------------------------------------------------
>
>                 Key: KAFKA-14746
>                 URL: https://issues.apache.org/jira/browse/KAFKA-14746
>             Project: Kafka
>          Issue Type: Improvement
>          Components: KafkaConnect
>            Reporter: Mickael Maison
>            Priority: Major
>
> If a Connector throws in its taskConfigs() method, the runtime ends up 
> retrying using DistributedHerder.RECONFIGURE_CONNECTOR_TASKS_BACKOFF_MS which 
> is a fixed value (250ms). For each retry, the runtime prints the connector 
> configuration and the enriched configuration so this can quickly generate a 
> lot of logs.
> There is some value in throwing in taskConfigs() as it allows to fail fast in 
> case the connector is given bad credentials. For example this is what some of 
> the Debezium connectors do: 
> https://github.com/debezium/debezium/blob/main/debezium-connector-sqlserver/src/main/java/io/debezium/connector/sqlserver/SqlServerConnector.java#L56-L69
> The way Connectors are expected to work today is to instead always create 
> tasks and let each task fail in case the configuration is wrong. We should 
> document that and make it clear in the javadoc that throwing in taskConfigs 
> is not recommended.



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

Reply via email to