You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Alieh Saeedi (Jira)" <ji...@apache.org> on 2026/05/27 16:18:00 UTC
[jira] [Updated] (KAFKA-20623) Wire topology description plugin into GroupCoordinatorService
[ https://issues.apache.org/jira/browse/KAFKA-20623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alieh Saeedi updated KAFKA-20623:
---------------------------------
Description:
Write path, heartbeat gating, delete:
GroupCoordinatorService: builder plumbing for plugin. Heartbeat post-processing: set TopologyDescriptionRequired=true when StoredTopologyEpoch != currentTopologyEpoch AND LastFailedTopologyEpoch != currentTopologyEpoch AND backoff not active (skip STALE_TOPOLOGY members). In-memory per-group exponential backoff (30s → 1h). StreamsGroupTopologyDescriptionUpdate handler: validate MemberId against current group membership (→ UNKNOWN_MEMBER_ID), call plugin.setTopology, on success write StoredTopologyEpoch metadata record, on permanent failure write LastFailedTopologyEpoch, on transient failure arm backoff. POJO↔wire converters. deleteGroups integration: call plugin.deleteTopology before tombstoning, return DELETE_FAILED on plugin failure. GroupCoordinator interface update. GroupCoordinatorServiceTest.
> Wire topology description plugin into GroupCoordinatorService
> -------------------------------------------------------------
>
> Key: KAFKA-20623
> URL: https://issues.apache.org/jira/browse/KAFKA-20623
> Project: Kafka
> Issue Type: Sub-task
> Reporter: Alieh Saeedi
> Assignee: Lucas Brutschy
> Priority: Major
> Fix For: 4.4.0
>
>
> Write path, heartbeat gating, delete:
> GroupCoordinatorService: builder plumbing for plugin. Heartbeat post-processing: set TopologyDescriptionRequired=true when StoredTopologyEpoch != currentTopologyEpoch AND LastFailedTopologyEpoch != currentTopologyEpoch AND backoff not active (skip STALE_TOPOLOGY members). In-memory per-group exponential backoff (30s → 1h). StreamsGroupTopologyDescriptionUpdate handler: validate MemberId against current group membership (→ UNKNOWN_MEMBER_ID), call plugin.setTopology, on success write StoredTopologyEpoch metadata record, on permanent failure write LastFailedTopologyEpoch, on transient failure arm backoff. POJO↔wire converters. deleteGroups integration: call plugin.deleteTopology before tombstoning, return DELETE_FAILED on plugin failure. GroupCoordinator interface update. GroupCoordinatorServiceTest.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)