On Thu, May 29, 2025, at 08:37, José Armando García Sancio wrote:
> Hi Colin,
>
> On Tue, May 27, 2025 at 8:57 PM Colin McCabe <cmcc...@apache.org> wrote:
>> My argument was that it would be unlikely that all three of these things 
>> would be true. One reason why I think this is that 3.7-IV3 is a pretty old 
>> MV at this point anyway.
>
> Then why not enforce that in the KIP and code? You are basically
> saying that because MV 3.7 is so old, the clusters should not
> downgrade before that version.

Hi Jose,

OK. I will edit it to say that you can’t go back to before MV 3.7-IV3. Then we 
can drop the discussion of this corner case.

>
>> In the scenario described above, restarting the process is all that is 
>> needed.
>
> Okay.
>
>> Hmm, I'm having trouble understanding your question in this case. The 
>> initial question was something like "what happens if the broker exits before 
>> generating the snapshot"? And the answer to that is "the broker generates 
>> the snapshot once you start it up again." After all, it is reading the same 
>> log, and encountering the same FeatureLevelRecord.
>>
>> Does that answer the question?
>
> Doesn't this assume that brokers (and the minority of controllers) are
> online when the metadata version is getting changed (downgrades and
> upgrades)?
>
> Note that this can also happen if the brokers are online since
> snapshot generation is async but maybe it is easier to understand the
> scenario if you assume that the broker is offline when the MV was
> upgraded and downgraded.
>

It doesn’t matter whether the brokers are online when the MV is changed. 
They’ll replay the log and generate the appropriate snapshots whenever they 
come online.

Best,
Colin


> Thanks,
> -- 
> -José

Reply via email to