Thanks Jose and Kevin,

Wanted to confirm my understanding, for the scenarios under the
Compatibility section:

2. bootstrap.checkpoint exist with metadata records and the zero checkpoint
> exists but doesn't contain any metadata records - In this case the
> controller will behave as it does today. The controller will be able to
> identify this case because RaftClient.Listener#handleLoadSnapshot will ask
> to load the zero checkpoint but it will be empty, no metadata records.

This is the expected state for a cluster which upgraded from pre-KIP-1170
to post-KIP-1170?


> 3. bootstrap.checkpoint doesn't exist and the zero checkpoint exists with
> metadata records - In this case the controller will use the zero
> checkpoint's metadata records to and write them to the log in a transaction
> or single atomic batch like the controller does pre-KIP-1170.

And this would be the expected state on startup for newly provisioned
clusters that implement KIP-1170?

4. bootstrap.checkpoint exist and the zero checkpoint exists with metadata
> records - This should not be possible from a formatting point of view but
> the active controller will handle this case the same as bullet 3 but with
> the addition of writing a WARN message to the controller log.

Can we explain why this should not be possible? It might not be obvious to
readers

Also, what do you think about breaking the Proposed Changes section into
two examples? How new changes impact newly provisioned clusters vs existing
clusters (with bootstrap.checkpoint).

> If the controller doesn't load a snapshot at epoch 0 and offset 0, the
> controller will load the bootstrap.checkpoint and rewrite the bootstrapping
> record to the cluster metadata partition if they haven't been successfully
> written in the past.

For instance, it seems I should interpret the above scenario as when the
cluster existed pre-KIP-1170, but it's possible for the controller not to
load a snapshot at epoch 0 and offset 0 solely because that snapshot was
deleted due to retention.

Best,
Alyssa

On Wed, Aug 27, 2025 at 1:23 PM José Armando García Sancio
<jsan...@confluent.io.invalid> wrote:

> Hi all,
>
> I would like to start a discussion on KIP-1170: Unify cluster metadata
> bootstrapping:
>
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-1170%3A+Unify+cluster+metadata+bootstrapping
>
> This KIP unifies the controller's bootstrap checkpoint and KRaft zero
> checkpoint by moving the starting metadata from bootstrap.checkpoint
> to the zero checkpoint.
>
> Thanks,
>
> --
> -José
>

Reply via email to