Thanks for the KIP.

+1 (binding)

> On Mar 12, 2026, at 6:09 PM, Chia-Ping Tsai <[email protected]> wrote:
> 
> +1 (binding)
>> Luke Chen <[email protected]> 於 2026年3月12日 下午3:08 寫道:
>> 
>> I had another look. LGTM!
>> 
>> Thanks for the KIP.
>> +1 (binding) from me.
>> 
>> Thank you,
>> Luke
>> 
>>> On Tue, Apr 29, 2025 at 12:59 PM Kuan Po Tseng <[email protected]> wrote:
>>> 
>>> Hi Colin,
>>> 
>>> I just wanted to make sure I’m on the right track, so I’m sharing my
>>> understanding of
>>> the current process for adding a controller to the voter set.
>>> 
>>> Here's what I think it looks like:
>>> Step 1: Use kafka-storage.sh format to format the controller.
>>> Step 2: Start up the controller and ensure it starts up successfully.
>>> Step 3: Provide the controller config and use the kafka-metadata-quorum.sh
>>> add-controller command to add the controller to the voter set.
>>> 
>>> The KIP aims to simplify "Step 3". It removes the need to provide the
>>> controller config,
>>> as all the information that add-controller requires—like the directory UUID
>>> and controller endpoint—
>>> can be gathered through Admin#describeMetadataQuorum and
>>> Admin#describeConfigs.
>>> Since the controller is already in the cluster by Step 2, this information
>>> should be available.
>>> 
>>> So, users would still need to complete "Step 1" and "Step 2".
>>> Otherwise, as you mentioned, we won’t be able to retrieve the controller
>>> UUID and its corresponding endpoints for Step 3.
>>> 
>>> I’m not sure if I’ve misunderstood anything, so please let me know if
>>> there’s anything I’ve missed.
>>> 
>>> Thanks so much for reviewing my KIP!
>>> 
>>> Best regards,
>>> Kuan-Po Tseng
>>> 
>>>> On Tue, Apr 29, 2025 at 8:50 AM Colin McCabe <[email protected]> wrote:
>>>> 
>>>> So to expand a bit on what I wrote below:
>>>> 
>>>> - If the goal is to make it possible to have adding the controller node
>>>> happen in one place, and formatting the controller node happen in
>>> another,
>>>> those two places still need to communicate. What they need to communicate
>>>> is the new directory ID. This is basically a random UUID that must never
>>> be
>>>> reused.
>>>> 
>>>> - The most obvious way to do that is to format the new controller node
>>>> first, and then grab that ID. This is what the current system does, by
>>>> reading that local file.
>>>> 
>>>> - Another way to do it would be to generate the UUID somewhere else, and
>>>> then format using --initial-controllers. This currently requires spelling
>>>> out the full set of controllers and matching directory ids in the
>>> cluster.
>>>> One thing that is a bit subtle is that the tool will actually look at
>>> what
>>>> directory ID you gave, and use that directory ID when formatting your
>>>> directory. This should be documented a bit more prominently if we want
>>>> people to use this mechanism.
>>>> 
>>>> best,
>>>> Colin
>>>> 
>>>> 
>>>> On Mon, Apr 28, 2025, at 13:21, Colin McCabe wrote:
>>>>> Hi Kuan Po Tseng,
>>>>> 
>>>>> It is not possible to add a new controller purely by ID. You need
>>>>> controller ID, directory ID, and controller endpoints.
>>>>> 
>>>>> These cannot be obtained through describeMetadataQuorum since that only
>>>>> describes the existing quorum, not what you would like the new one to
>>>>> be. Also, obviously, we never want to reuse an existing directory ID.
>>>>> 
>>>>> Therefore I will vote -1 on this pending further discussion.
>>>>> 
>>>>> best,
>>>>> Colin
>>>>> 
>>>>> On Tue, Apr 22, 2025, at 08:56, Kuan Po Tseng wrote:
>>>>>> Hello everyone,
>>>>>> 
>>>>>> I would like to start a vote on KIP-1141, thank you!
>>>>>> 
>>>>>> KIP: https://cwiki.apache.org/confluence/x/PZFEF
>>>>>> Discussion thread:
>>>>>> https://lists.apache.org/thread/mq5n8j8w0ycg9fhd1m4zcc2ctrgfd0d4
>>>>>> 
>>>>>> Best,
>>>>>> Kuan-Po Tseng
>>>> 
>>> 

Reply via email to