Hi, Jiunn-Yang and Chia-Ping,

Thanks for the reply.

JR34. Hmm, it seems that the code in taskConfigs() could return an empty
list for a task if knownSourceTopicPartitions is less than maxTasks,
Chia-Ping?

JR36. Sounds good. Could you update the KIP? Also, should we do the same
for ssl.cipher.suites and sasl.oauthbearer.expected.audience?

JR37. Is it true that MirrorClientConfig.bootstrap.servers returns
ClassCastException for null? It seems that null could be casted to any
class.

JR38. "If the configuration is optional, we will reject any duplicate
values in the list." Could you clarify this? For example, plugin.path is
optional, but with a default value. We reject duplicates as well as empty
lists.

JR39. isEmptyAllowed and isNullAllowed are not public fields, right? They
are only public in the anyNonDuplicateValues() method.

JR40. It would be useful to mention that if cleanup.policy is empty and
remote.storage.enable is true, the local log segments will be cleaned based
on log.local.retention.bytes and log.local.retention.ms.

Jun

On Fri, Jul 18, 2025 at 9:52 AM Chia-Ping Tsai <chia7...@gmail.com> wrote:

> >
> > JR34: For these two configurations, setting an empty list feels a bit
> > unintuitive. If an empty list is
> > provided, the consumer will call the unsubscribe method, which doesn't
> > seem appropriate given
> > the documentation states: "Topic-partitions assigned to this task to
> > replicate."
> >
>
> agreed. Additionally, the source code [0] shows that it is not intended to
> generate empty tps for the source task
>
> [0]
>
> https://github.com/apache/kafka/blob/9b542b6ea21e84677a9292f250fc25f8b4162e6f/connect/mirror/src/main/java/org/apache/kafka/connect/mirror/MirrorSourceConnector.java#L202
>

Reply via email to