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 <[email protected]>
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 <[email protected]>
---
.../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()
+ );
}
}