Hi Chris, I added a section for backport plan here 
https://cwiki.apache.org/confluence/display/KAFKA/KIP-949%3A+Add+flag+to+enable+the+usage+of+topic+separator+in+MM2+DefaultReplicationPolicy#KIP949:AddflagtoenabletheusageoftopicseparatorinMM2DefaultReplicationPolicy-Backportingplan

Cheers, 
Omnia 

> On 13 Jul 2023, at 19:33, Chris Egerton <chr...@aiven.io.INVALID> wrote:
> 
> Hi Omnia,
> 
> Yes, I think we ought to state the backport plan in the KIP, since it's
> highly unusual for KIP changes or new configuration properties to be
> backported and we should get the approval of the community (including
> binding and non-binding voters) before implementing it.
> 
> Cheers,
> 
> Chris
> 
> On Thu, Jul 13, 2023 at 7:13 AM Omnia Ibrahim <o.g.h.ibra...@gmail.com>
> wrote:
> 
>> Hi Chris,
>> The implementation should be very small so backporting this to 3.1 and 3.2
>> would be perfect for this case if you or any other committer are okay with
>> approving the backporting. Do we need to state this in KIP as well or not?
>> 
>> Also, I’ll open a vote for the KIP today and prepare the pr for it so we
>> can merge it as soon as we can.
>> 
>> Thanks,
>> 
>> Omnia
>> 
>> On Wed, Jul 12, 2023 at 4:31 PM Chris Egerton <chr...@aiven.io.invalid>
>> wrote:
>> 
>>> Hi Omnia,
>>> 
>>> Thanks for changing the default, LGTM 👍
>>> 
>>> As far as backporting goes, we probably won't be doing another release
>> for
>>> 3.1, and possibly not for 3.2 either; however, if we can make the
>>> implementation focused enough (which I don't think would be too
>> difficult,
>>> but correct me if I'm wrong), then we can still backport through 3.1.
>> Even
>>> if we don't do another release it can make life easier for people who are
>>> maintaining parallel forks. Obviously this shouldn't be taken as a
>> blanket
>>> precedent but in this case it seems like the benefits may outweigh the
>>> costs. What are your thoughts?
>>> 
>>> Cheers,
>>> 
>>> Chris
>>> 
>>> On Wed, Jul 12, 2023 at 9:05 AM Omnia Ibrahim <o.g.h.ibra...@gmail.com>
>>> wrote:
>>> 
>>>> Hi Chris, thanks for the feedback.
>>>> 1. regarding the default value I had the same conflict of which version
>>> to
>>>> break the backward compatibility with. We can just say that this KIP
>>> gives
>>>> the release Pre KIP-690 the ability to keep the old behaviour with one
>>>> config and keep the backwards compatibility from post-KIP-690 the same
>> so
>>>> we don't break at least the last 3 versions. I will update the KIP to
>>>> switch the default value to true.
>>>> 2. For the backporting, which versions can we backport these to?
>> Usually,
>>>> Kafka supports bugfix releases as needed for the last 3 releases. Now
>> we
>>> @
>>>> 3.5 so the last 3 are 3.4, 3.3 and 3.2 is this correct?
>>>> 3. I'll add a Jira for updating the docs for this KIP so we don't
>> forget
>>>> about it.
>>>> 
>>>> Thanks
>>>> Omnia
>>>> 
>>>> 
>>>> On Mon, Jul 10, 2023 at 5:33 PM Chris Egerton <chr...@aiven.io.invalid
>>> 
>>>> wrote:
>>>> 
>>>>> Hi Omnia,
>>>>> 
>>>>> Thanks for taking this on! I have some thoughts but the general
>>> approach
>>>>> looks good.
>>>>> 
>>>>> 1. Default value
>>>>> 
>>>>> One thing I'm wrestling with is what the default value of the new
>>>> property
>>>>> should be. I know on the Jira ticket I proposed that it should be
>>> false,
>>>>> but I'm having second thoughts. Technically we'd preserve backward
>>>>> compatibility with pre-KIP-690 releases by defaulting to false, but
>> at
>>>> the
>>>>> same time, we'd break compatibility with post-KIP-690 releases. And
>> if
>>> we
>>>>> default to true, the opposite would be true: compatibility would be
>>>> broken
>>>>> with pre-KIP-690 releases, but preserved with post-KIP-690 releases.
>>>>> 
>>>>> One argument against defaulting to false (which, again, would
>> preserve
>>>> the
>>>>> behavior of MM2 before we accidentally broke compatibility with
>>> KIP-690)
>>>> is
>>>>> that this change could possibly cause a single MM2 setup to break
>>>>> twice--once when upgrading from a pre-KIP-690 release to an existing
>>>>> release, and again when upgrading from that existing release to a
>>> version
>>>>> that reverted (by default) to pre-KIP-690 behavior. On the other
>> hand,
>>> if
>>>>> we default to true (which would preserve the existing behavior that
>>>> breaks
>>>>> compatibility with pre-KIP-690 releases), then any given setup will
>>> only
>>>> be
>>>>> broken once.
>>>>> 
>>>>> In addition, if we default to true right now, then we don't have to
>>> worry
>>>>> about changing that default in 4.0 to a more intuitive value (I hope
>> we
>>>> can
>>>>> all agree that, for new clusters, it makes sense to set this property
>>> to
>>>>> true and not to distinguish between internal and non-internal
>> topics).
>>>>> 
>>>>> With that in mind, I'm now leaning more towards defaulting to true,
>> but
>>>>> would be interested in your thoughts.
>>>>> 
>>>>> 
>>>>> 2. Backport?
>>>>> 
>>>>> It's highly unlikely to backport changes for a KIP, but given the
>>> impact
>>>> of
>>>>> the compatibility break that we're trying to address here, and the
>>>>> extremely low risk of the proposed changes, I think we should
>> consider
>>>>> backporting the proposed fix to all affected release branches (i.e.,
>>> 3.1
>>>>> through 3.5).
>>>>> 
>>>>> 
>>>>> 3. Extra steps
>>>>> 
>>>>> I also think we can take these additional steps to try to help
>> prevent
>>>>> users from being bitten by this change:
>>>>> 
>>>>> - Add a note to our upgrade instructions [1] for all affected
>> versions
>>>> that
>>>>> instructs users on how to safely upgrade to a post-KIP-690 release,
>> for
>>>>> versions that both do and do not include the changes from this KIP
>>>>> - Log a warning message on MM2 startup if the config contains an
>>> explicit
>>>>> value for "replication.policy.separator" but does not contain an
>>> explicit
>>>>> value for "replication.policy.internal.topic.separator.enabled"
>>>>> 
>>>>> These details don't necessarily have to be codified in the KIP, but
>>>> they're
>>>>> worth taking into account when considering how to design any
>> functional
>>>>> changes in order to better try to gauge how well this could go for
>> our
>>>>> users.
>>>>> 
>>>>> [1] - https://kafka.apache.org/documentation.html#upgrade
>>>>> 
>>>>> 
>>>>> Thanks again for the KIP!
>>>>> 
>>>>> Cheers,
>>>>> 
>>>>> Chris
>>>>> 
>>>>> On Fri, Jul 7, 2023 at 10:12 AM Omnia Ibrahim <
>> o.g.h.ibra...@gmail.com
>>>> 
>>>>> wrote:
>>>>> 
>>>>>> Hi everyone,
>>>>>> I want to start the discussion of the KIP-949. The proposal is here
>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-949%3A+Add+flag+to+enable+the+usage+of+topic+separator+in+MM2+DefaultReplicationPolicy
>>>>>> <
>>>>>> 
>>>>> 
>>>> 
>>> 
>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-949%3A+Add+flag+to+enable+the+usage+of+topic+separator+in+MM2+DefaultReplicationPolicy
>>>>>>> 
>>>>>> 
>>>>>> Thanks for your time and feedback.
>>>>>> Omnia
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 

Reply via email to