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 >>>> >>>
