You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by da...@apache.org on 2023/02/07 08:07:23 UTC

[kafka] branch trunk updated: KAFKA-14678; Move `__consumer_offsets` records from `core` to `group-coordinator` (#13200)

This is an automated email from the ASF dual-hosted git repository.

dajac 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 094e343f18d KAFKA-14678; Move `__consumer_offsets` records from `core` to `group-coordinator` (#13200)
094e343f18d is described below

commit 094e343f18d5319a871975985d24a1469f6b99a3
Author: David Jacot <dj...@confluent.io>
AuthorDate: Tue Feb 7 09:06:56 2023 +0100

    KAFKA-14678; Move `__consumer_offsets` records from `core` to `group-coordinator` (#13200)
    
    This patch moves the current `__consumer_offsets` records from the `core` module to the new `group-coordinator` module.
    
    Reviewers: Christo Lolov <lo...@amazon.com>, Mickael Maison <mi...@gmail.com>
---
 build.gradle                                       | 23 ++++++++++++++++++++++
 checkstyle/import-control.xml                      |  2 ++
 checkstyle/suppressions.xml                        |  2 ++
 .../coordinator/group/GroupMetadataManager.scala   |  2 +-
 .../resources/common/message/GroupMetadataKey.json |  0
 .../common/message/GroupMetadataValue.json         |  0
 .../resources/common/message/OffsetCommitKey.json  |  0
 .../common/message/OffsetCommitValue.json          |  0
 8 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/build.gradle b/build.gradle
index 37d6a2faf0e..964c898ec76 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1237,6 +1237,10 @@ project(':metadata') {
 project(':group-coordinator') {
   archivesBaseName = "kafka-group-coordinator"
 
+  configurations {
+    generator
+  }
+
   dependencies {
     implementation project(':server-common')
     implementation project(':clients')
@@ -1248,6 +1252,8 @@ project(':group-coordinator') {
     testImplementation libs.mockitoCore
 
     testRuntimeOnly libs.slf4jlog4j
+
+    generator project(':generator')
   }
 
   sourceSets {
@@ -1266,6 +1272,23 @@ project(':group-coordinator') {
   javadoc {
     enabled = false
   }
+
+  task processMessages(type:JavaExec) {
+    mainClass = "org.apache.kafka.message.MessageGenerator"
+    classpath = configurations.generator
+    args = [ "-p", "org.apache.kafka.coordinator.group.generated",
+             "-o", "src/generated/java/org/apache/kafka/coordinator/group/generated",
+             "-i", "src/main/resources/common/message",
+             "-m", "MessageDataGenerator"
+    ]
+    inputs.dir("src/main/resources/common/message")
+        .withPropertyName("messages")
+        .withPathSensitivity(PathSensitivity.RELATIVE)
+    outputs.cacheIf { true }
+    outputs.dir("src/generated/java/org/apache/kafka/coordinator/group/generated")
+  }
+
+  compileJava.dependsOn 'processMessages'
 }
 
 project(':examples') {
diff --git a/checkstyle/import-control.xml b/checkstyle/import-control.xml
index 303fdab97d2..bc89d239e70 100644
--- a/checkstyle/import-control.xml
+++ b/checkstyle/import-control.xml
@@ -341,7 +341,9 @@
   <subpackage name="coordinator">
     <subpackage name="group">
       <allow pkg="org.apache.kafka.common.message" />
+      <allow pkg="org.apache.kafka.common.protocol" />
       <allow pkg="org.apache.kafka.common.requests" />
+      <allow pkg="org.apache.kafka.server.util"/>
     </subpackage>
   </subpackage>
 
diff --git a/checkstyle/suppressions.xml b/checkstyle/suppressions.xml
index 862a2927ecc..fefd97e90d1 100644
--- a/checkstyle/suppressions.xml
+++ b/checkstyle/suppressions.xml
@@ -215,6 +215,8 @@
               files="raft[\\/]src[\\/](generated|generated-test)[\\/].+.java$"/>
     <suppress checks="(NPathComplexity|ClassFanOutComplexity|CyclomaticComplexity|ClassDataAbstractionCoupling|FinalLocalVariable|LocalVariableName|MemberName|ParameterName|MethodLength|JavaNCSS|AvoidStarImport)"
               files="storage[\\/]src[\\/](generated|generated-test)[\\/].+.java$"/>
+    <suppress checks="(NPathComplexity|ClassFanOutComplexity|CyclomaticComplexity|ClassDataAbstractionCoupling|FinalLocalVariable|LocalVariableName|MemberName|ParameterName|MethodLength|JavaNCSS|AvoidStarImport)"
+              files="group-coordinator[\\/]src[\\/](generated|generated-test)[\\/].+.java$"/>
 
     <suppress checks="ImportControl" files="FetchResponseData.java"/>
     <suppress checks="ImportControl" files="RecordsSerdeTest.java"/>
diff --git a/core/src/main/scala/kafka/coordinator/group/GroupMetadataManager.scala b/core/src/main/scala/kafka/coordinator/group/GroupMetadataManager.scala
index a90b160d831..4cee61b990a 100644
--- a/core/src/main/scala/kafka/coordinator/group/GroupMetadataManager.scala
+++ b/core/src/main/scala/kafka/coordinator/group/GroupMetadataManager.scala
@@ -26,7 +26,6 @@ import java.util.concurrent.locks.ReentrantLock
 import java.util.concurrent.ConcurrentHashMap
 import com.yammer.metrics.core.Gauge
 import kafka.common.OffsetAndMetadata
-import kafka.internals.generated.{GroupMetadataValue, OffsetCommitKey, OffsetCommitValue, GroupMetadataKey => GroupMetadataKeyData}
 import kafka.metrics.KafkaMetricsGroup
 import kafka.server.{ReplicaManager, RequestLocal}
 import kafka.utils.CoreUtils.inLock
@@ -44,6 +43,7 @@ import org.apache.kafka.common.requests.ProduceResponse.PartitionResponse
 import org.apache.kafka.common.requests.{OffsetCommitRequest, OffsetFetchResponse}
 import org.apache.kafka.common.utils.{Time, Utils}
 import org.apache.kafka.common.{KafkaException, MessageFormatter, TopicPartition}
+import org.apache.kafka.coordinator.group.generated.{GroupMetadataValue, OffsetCommitKey, OffsetCommitValue, GroupMetadataKey => GroupMetadataKeyData}
 import org.apache.kafka.server.common.MetadataVersion
 import org.apache.kafka.server.common.MetadataVersion.{IBP_0_10_1_IV0, IBP_2_1_IV0, IBP_2_1_IV1, IBP_2_3_IV0}
 import org.apache.kafka.server.log.internals.{AppendOrigin, FetchIsolation}
diff --git a/core/src/main/resources/common/message/GroupMetadataKey.json b/group-coordinator/src/main/resources/common/message/GroupMetadataKey.json
similarity index 100%
rename from core/src/main/resources/common/message/GroupMetadataKey.json
rename to group-coordinator/src/main/resources/common/message/GroupMetadataKey.json
diff --git a/core/src/main/resources/common/message/GroupMetadataValue.json b/group-coordinator/src/main/resources/common/message/GroupMetadataValue.json
similarity index 100%
rename from core/src/main/resources/common/message/GroupMetadataValue.json
rename to group-coordinator/src/main/resources/common/message/GroupMetadataValue.json
diff --git a/core/src/main/resources/common/message/OffsetCommitKey.json b/group-coordinator/src/main/resources/common/message/OffsetCommitKey.json
similarity index 100%
rename from core/src/main/resources/common/message/OffsetCommitKey.json
rename to group-coordinator/src/main/resources/common/message/OffsetCommitKey.json
diff --git a/core/src/main/resources/common/message/OffsetCommitValue.json b/group-coordinator/src/main/resources/common/message/OffsetCommitValue.json
similarity index 100%
rename from core/src/main/resources/common/message/OffsetCommitValue.json
rename to group-coordinator/src/main/resources/common/message/OffsetCommitValue.json