Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Any client IDs specified in the worker configuration via producer.client.id or consumer.client.id properties will remain unchanged, as those will take precedence.Since the default client.id values are changing, this will also affect any user that has quotas defined against the current defaults. The current default client.id values are of the form: consumer-{count}  and  producer-{count}

This change can have an indirect impact on resource usage by a Connector. For example, systems that were enforcing quotas using a "consumer-[id]" client id will now have to update their configuration to enforce quota on "connector-consumer-[task-id]". For systems that were not enforcing any quota limits on client ids, or using default quotas, no change is expected.

Rejected Alternatives


Add a worker configuration option to automatically append task ID to the client ID used by producer or consumer instances instantiated by a Worker. This ensures all JMX MBean names used within a Kafka Connect cluster are distinct.

This approach was rejected because adding new configuration options is considered a larger change to public interfaces than necessary.

Allow overriding client.id on a per-connector basis

This option does not give the required level of granularity, individual tasks would still have name conflicts without other tasks create by the same connector.  This could be avoided if the connector could control the client id at the task level, but that would require a much more complex change.