Thanks Jiunn for the responses.
I don't have any further questions.

Regards,
Murali

On Thu, May 7, 2026 at 2:07 PM 黃竣陽 <[email protected]> wrote:

> Hi all,
>
> I’d like to manually bump this thread.
>
> Best Regards,
> Jiunn-Yang
>
> > 黃竣陽 <[email protected]> 於 2026年5月1日 晚上10:37 寫道:
> >
> > Hello all,
> >
> > Thanks for the feedback.
> >
> > DJ01/DJ02:
> >
> > MetadataResponse bumps from v13 to v14. The PartitionMetadata struct
> gains a new
> > field PartitionAgeMs (int64, default -1), computed server-side by the
> broker as
> > broker_current_time - partition_creation_time.
> >
> > Also add the consumer heartbeat flow. when MembershipManager detects a
> newly assigned
> > partition, it explicitly invalidates the metadata for the affected topic
> and forces a fresh MetadataRequest
> > before making the offset reset decision, even if the topic ID is already
> in the cache.
> >
> > MB0:
> >
> > The consumer learns the broker's maximum supported MetadataResponse
> version via the
> > ApiVersions negotiation at connection time. If the negotiated version is
> unsupported, the consumer
> > knows the broker does not support PartitionAgeMs at all and can throw an
> UnsupportedVersionException
> > immediately, rather than silently falling back to latest and risking
> data loss without any operator-visible signal.
> >
> > MB1/MB2/MB3:
> >
> > I have addressed these changes in the KIP.
> >
> > Best Regards,
> > Jiunn-Yang
> >
> >> Chia-Ping Tsai <[email protected]> 於 2026年4月29日 下午4:04 寫道:
> >>
> >> hi David
> >>
> >> I agree with the direction of moving the 'age' resolution from the
> Heartbeat API to the Metadata API to keep the control plane clean. The main
> trade-off, as we noted before, is introducing inter-broker clock skew. The
> Group Coordinator approach provided a single source of truth for time.
> >>
> >> However, realistically, this time skew should be negligible. Given that
> the max.age threshold will likely be configured in minutes or hours, a
> typical NTP skew (in milliseconds) between brokers won't impact the
> fallback decision.
> >>
> >> Best,
> >> Chia-Ping
> >>
> >>> David Jacot via dev <[email protected]> 於 2026年4月29日 下午3:29 寫道:
> >>>
> >>> Hi all,
> >>>
> >>> Thanks for the KIP!
> >>>
> >>> Sorry, I haven't really followed the previous conversation but I took a
> >>> quick look at this one.
> >>>
> >>> DJ01: I don't clearly understand the flow with the
> ConsumerGroupHeartbeat
> >>> API after reading the KIP. There is a new boolean; the KIP states that
> >>> partition ages are returned only when this boolean is set. Implicitly,
> this
> >>> means that when the consumer receives a new partition, it will issue a
> new
> >>> HB request with the boolean set to receive the ages. Is my
> understanding
> >>> correct? We should perhaps clarify the flow and also explain how it
> fits
> >>> into the existing flow (e.g. list offsets, fetch offsets, etc.).
> >>> DJ02: It my understanding is correct, I wonder if
> >>> the ConsumerGroupHeartbeat API is the right place for this given that
> a new
> >>> round trip is done anyway. Alternatively, it could simply include the
> >>> metadata. Generally, we should be rather cautious about not overloading
> >>> the ConsumerGroupHeartbeat API with unrelated concepts. The API is a
> >>> control plane API for assigning or revoking partitions. The fact that
> we
> >>> don't want to add it to the corresponding Streams API also suggests
> >>> something is not quite right. What would we do if we want to support
> >>> Streams in the future?
> >>>
> >>> Best,
> >>> David
> >>>
> >>>> On Wed, Apr 29, 2026 at 12:28 AM Muralidhar Basani via dev <
> >>>> [email protected]> wrote:
> >>>>
> >>>> Hi Jiunn,
> >>>>
> >>>> Thank you for this great kip. Good to know about the gap.
> >>>>
> >>>> mb-0 - why a new v2 version bump for RequestPartitionAges field. Can a
> >>>> tagged field (for ex: on response, PartitionAges on TopicPartitions)
> be
> >>>> used here and avoid version bump?
> >>>>
> >>>> mb-1 - For the new config, is there a recommended value or a ConfigDef
> >>>> validator? Probably it should based on the metadata.max.age.ms ?
> Sizing
> >>>> instructions can be part of javadocs I guess.
> >>>>
> >>>> mb-2 - (minor) As there are no changes to Kafka Streams, would it be
> better
> >>>> to add this new config auto.offset.reset.latest.max.age to the
> >>>> StreamsConfig block list (NON_CONFIGURABLE_CONSUMER_DEFAULT_CONFIGS)
> for a
> >>>> clear warning, incase users configure it? This is the most familiar
> >>>> consumer config and users might easily mistakenly configure it. Or
> may be
> >>>> it's not worth it to add.
> >>>>
> >>>> mb-3 - (minor) The phrasing "the consumer falls back to earliest"
> reads as
> >>>> if the config were being changed per-partition which isn't supported.
> May
> >>>> be rephrasing to something like "consumer resolves the initial
> position to
> >>>> start offset for that partition" as if earliest was applied to that
> >>>> partition only and auto.offset.reset config is unchanged.
> >>>>
> >>>> Thanks,
> >>>> Murali
> >>>>
> >>>>> On Tue, Apr 28, 2026 at 2:48 PM 黃竣陽 <[email protected]> wrote:
> >>>>>
> >>>>> Hi chia,
> >>>>>
> >>>>> I have updated the KIP to include this change.
> >>>>>
> >>>>> Best Regards,
> >>>>> Jiunn-Yang
> >>>>>
> >>>>>> Chia-Ping Tsai <[email protected]> 於 2026年4月28日 晚上8:03 寫道:
> >>>>>>
> >>>>>> hi Jiunn-Yang
> >>>>>>
> >>>>>> chia_0: Should we expose the partition creation time via the Admin
> API?
> >>>>> I assume it would be valuable for users to diagnose and troubleshoot
> the
> >>>>> behavior of auto.offset.reset.latest.max.age
> >>>>>>
> >>>>>> Best,
> >>>>>> Chia-Ping
> >>>>>>
> >>>>>> On 2026/04/28 10:47:58 黃竣陽 wrote:
> >>>>>>> Hello everyone,
> >>>>>>>
> >>>>>>> I would like to start a discussion on KIP-1327 Prevent Hot Data
> Loss
> >>>> on
> >>>>> Partition Expansion for Latest Policy
> >>>>>>> <
> >>>>
> https://urldefense.com/v3/__https://cwiki.apache.org/confluence/x/KY4mGQ__;!!Ayb5sqE7!qF4q1QzF1RRgP61D7A2xuEai1ky7fepKDKFFvpNBuePikH-ULmT87TvuuZzy5kau5E4y5zMZAmfQQiwZomM$
> >>>>>
> >>>>>>>
> >>>>>>> This proposal aims to introduces auto.offset.reset.latest.max.age,
> a
> >>>>> consumer config that lets the
> >>>>>>> latest reset policy distinguish newly expanded (hot) partitions
> from
> >>>>> long-existing (cold) ones. Partitions
> >>>>>>> younger than the configured threshold automatically fall back to
> >>>>> earliest, preventing silent data loss
> >>>>>>> during topic expansion without forcing a full historical reprocess.
> >>>>>>>
> >>>>>>> Best regards,
> >>>>>>> Jiunn-Yang
> >>>>>
> >>>>>
> >>>>
> >
>
>

Reply via email to