AndrewJSchofield commented on code in PR #15067:
URL: https://github.com/apache/kafka/pull/15067#discussion_r1450403817


##########
core/src/main/scala/kafka/server/ConfigHandler.scala:
##########
@@ -265,3 +266,12 @@ class ClientMetricsConfigHandler(private val 
clientMetricsManager: ClientMetrics
     clientMetricsManager.updateSubscription(subscriptionGroupId, properties)
   }
 }
+

Review Comment:
   Actually, I think the new group coordinator stuff is only enabled for KRaft 
clusters. As a result, supporting group configuration with ZK seems like 
throwaway work. If you look at the client metrics configs, they are only 
supported for KRaft so I suggest you copy that.



##########
clients/src/test/java/org/apache/kafka/clients/admin/KafkaAdminClientTest.java:
##########
@@ -4112,11 +4112,18 @@ public void testIncrementalAlterConfigs()  throws 
Exception {
                     .setErrorCode(Errors.INVALID_REQUEST.code())
                     .setErrorMessage("Config value append is not allowed for 
config"));
 
+            responseData.responses().add(new AlterConfigsResourceResponse()
+                    .setResourceName("")
+                    .setResourceType(ConfigResource.Type.GROUP.id())
+                    .setErrorCode(Errors.INVALID_REQUEST.code())
+                    .setErrorMessage("Default group resources are not 
allowed."));
+
             env.kafkaClient().prepareResponse(new 
IncrementalAlterConfigsResponse(responseData));
 
             ConfigResource brokerResource = new 
ConfigResource(ConfigResource.Type.BROKER, "");
             ConfigResource topicResource = new 
ConfigResource(ConfigResource.Type.TOPIC, "topic1");
             ConfigResource metricResource = new 
ConfigResource(ConfigResource.Type.CLIENT_METRICS, "metric1");
+            ConfigResource groupResource = new 
ConfigResource(ConfigResource.Type.GROUP, "");

Review Comment:
   I think it would be more consistent with the existing test to attempt an 
invalid request on a valid resource. As you've done it, you need to create a 
second group resource with a name a bit later on, which doesn't seem necessary.



##########
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/GroupConfig.java:
##########
@@ -0,0 +1,104 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.kafka.coordinator.group;
+
+import static org.apache.kafka.common.config.ConfigDef.Importance.MEDIUM;
+import static org.apache.kafka.common.config.ConfigDef.Range.atLeast;
+import static org.apache.kafka.common.config.ConfigDef.Type.INT;
+
+import org.apache.kafka.common.config.AbstractConfig;
+import org.apache.kafka.common.config.ConfigDef;
+import org.apache.kafka.common.errors.InvalidConfigurationException;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+
+/**
+ * Group configuration related parameters and supporting methods like 
validation, etc. are
+ * defined in this class.
+ */
+public class GroupConfig extends AbstractConfig {
+
+    public static final String CONSUMER_SESSION_TIMEOUT_CONFIG = 
"consumer.session.timeout.ms";

Review Comment:
   I think this would usually be `CONSUMER_SESSION_TIMEOUT_MS_CONFIG`. Same for 
the others.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to