You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by sc...@apache.org on 2025/04/03 12:47:32 UTC
(kafka) branch trunk updated: KAFKA-19075: Included other share group dynamic configs in extractShareGroupConfigMap method in ShareGroupConfig (#19348)
This is an automated email from the ASF dual-hosted git repository.
schofielaj pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new c3f0890f53b KAFKA-19075: Included other share group dynamic configs in extractShareGroupConfigMap method in ShareGroupConfig (#19348)
c3f0890f53b is described below
commit c3f0890f53b8326fff8f9dc19e947524d9325971
Author: Chirag Wadhwa <12...@users.noreply.github.com>
AuthorDate: Thu Apr 3 18:17:25 2025 +0530
KAFKA-19075: Included other share group dynamic configs in extractShareGroupConfigMap method in ShareGroupConfig (#19348)
This PR includes `share.session.timeout.ms` and
`share.heartbeat.interval.ms` in the `extractShareGroupConfigMap` method
in `ShareGroupConfig`. With this change, the default value of
`share.session.timeout.ms` and `share.heartbeat.interval.ms` for every
group will be set as the value of the static configs
`group.share.session.timeout.ms` and `group.share.heartbeat.interval.ms`
respectively
Reviewers: Andrew Schofield <as...@confluent.io>
---
.../kafka/coordinator/group/GroupCoordinatorConfig.java | 2 +-
.../coordinator/group/modern/share/ShareGroupConfig.java | 13 ++++++++++---
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupCoordinatorConfig.java b/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupCoordinatorConfig.java
index 89131d61b6e..7bec808574b 100644
--- a/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupCoordinatorConfig.java
+++ b/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupCoordinatorConfig.java
@@ -553,7 +553,7 @@ public class GroupCoordinatorConfig {
public Map<String, Integer> extractGroupConfigMap(ShareGroupConfig shareGroupConfig) {
Map<String, Integer> defaultConfigs = new HashMap<>();
defaultConfigs.putAll(extractConsumerGroupConfigMap());
- defaultConfigs.putAll(shareGroupConfig.extractShareGroupConfigMap());
+ defaultConfigs.putAll(shareGroupConfig.extractShareGroupConfigMap(this));
return Collections.unmodifiableMap(defaultConfigs);
}
diff --git a/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/modern/share/ShareGroupConfig.java b/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/modern/share/ShareGroupConfig.java
index e216bd4037c..ce2a8744ddb 100644
--- a/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/modern/share/ShareGroupConfig.java
+++ b/group-coordinator/src/main/java/org/apache/kafka/coordinator/group/modern/share/ShareGroupConfig.java
@@ -161,9 +161,16 @@ public class ShareGroupConfig {
}
/**
- * Copy the subset of properties that are relevant to share group.
+ * Copy the subset of properties that are relevant to share group. These configs include those which can be set
+ * statically (for all groups) or dynamically (for a specific group). In those cases, the default value for the
+ * group specific dynamic config (Ex. share.session.timeout.ms) should be the value set for the static config
+ * (Ex. group.share.session.timeout.ms).
*/
- public Map<String, Integer> extractShareGroupConfigMap() {
- return Map.of(GroupConfig.SHARE_RECORD_LOCK_DURATION_MS_CONFIG, shareGroupRecordLockDurationMs());
+ public Map<String, Integer> extractShareGroupConfigMap(GroupCoordinatorConfig groupCoordinatorConfig) {
+ return Map.of(
+ GroupConfig.SHARE_SESSION_TIMEOUT_MS_CONFIG, groupCoordinatorConfig.shareGroupSessionTimeoutMs(),
+ GroupConfig.SHARE_HEARTBEAT_INTERVAL_MS_CONFIG, groupCoordinatorConfig.shareGroupHeartbeatIntervalMs(),
+ GroupConfig.SHARE_RECORD_LOCK_DURATION_MS_CONFIG, shareGroupRecordLockDurationMs()
+ );
}
}