siddharthaDevineni commented on code in PR #21601:
URL: https://github.com/apache/kafka/pull/21601#discussion_r2869915268
##########
build.gradle:
##########
@@ -2046,6 +2046,7 @@ project(':clients') {
include "**/org/apache/kafka/common/security/scram/*"
include "**/org/apache/kafka/common/security/token/delegation/*"
include "**/org/apache/kafka/common/serialization/*"
+ include "**/org/apache/kafka/common/utils/Bytes.java"
Review Comment:
I looked into following the pattern from #21412 and moving non-public
classes to an internals subpackage. However, this introduces a significant
complication: many of the utils classes are referenced in auto-generated code
produced by the MessageGenerator.
When I attempted the reorganization, I got compilation errors like these are
just a few of many:
Addressing this would require updating the MessageGenerator templates,
regenerating all message files, and extensive testing - significantly beyond
what was discussed in KIP-1247.
Given this complexity, what's the best path forward? Should this broader
reorganization be handled separately, or is there a simpler approach I am
missing?
./gradlew clean :clients:compileJava :clients:compileTestJava
:streams:compileJava :streams:compileTestJava
Starting a Gradle Daemon, 1 incompatible and 1 stopped Daemons could not be
reused, use --status for details
> Configure project :
Starting build with version 4.3.0-SNAPSHOT (commit id f4d3bc03) using Gradle
9.2.1, Java 21 and Scala 2.13.18
Build properties: ignoreFailures=false, maxParallelForks=10,
maxScalacThreads=8, maxTestRetries=0
> Task :streams:processMessages
MessageGenerator: processed 1 Kafka message JSON file(s).
> Task :clients:processMessages
MessageGenerator: processed 198 Kafka message JSON file(s).
> Task :clients:compileJava
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:41:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:42:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashCollection;
^
symbol: class ImplicitLinkedHashCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:43:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashMultiCollection;
^
symbol: class ImplicitLinkedHashMultiCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:548:
error: package ImplicitLinkedHashMultiCollection does not exist
public static class ApiVersion implements Message,
ImplicitLinkedHashMultiCollection.Element {
^
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/LeaderChangeMessage.java:39:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/SnapshotHeaderRecord.java:35:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/SnapshotFooterRecord.java:35:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/KRaftVersionRecord.java:35:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/VotersRecord.java:41:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/VotersRecord.java:42:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashCollection;
^
symbol: class ImplicitLinkedHashCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/VotersRecord.java:43:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashMultiCollection;
^
symbol: class ImplicitLinkedHashMultiCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/VotersRecord.java:711:
error: cannot find symbol
public static class EndpointCollection extends
ImplicitLinkedHashMultiCollection<Endpoint> {
^
symbol: class ImplicitLinkedHashMultiCollection
location: class VotersRecord
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/VotersRecord.java:453:
error: package ImplicitLinkedHashMultiCollection does not exist
public static class Endpoint implements Message,
ImplicitLinkedHashMultiCollection.Element {
^
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:780:
error: cannot find symbol
public static class ApiVersionCollection extends
ImplicitLinkedHashMultiCollection<ApiVersion> {
^
symbol: class ImplicitLinkedHashMultiCollection
location: class ApiVersionsResponseData
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:1053:
error: cannot find symbol
public static class SupportedFeatureKeyCollection extends
ImplicitLinkedHashMultiCollection<SupportedFeatureKey> {
^
symbol: class ImplicitLinkedHashMultiCollection
location: class ApiVersionsResponseData
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:814:
error: package ImplicitLinkedHashMultiCollection does not exist
public static class SupportedFeatureKey implements Message,
ImplicitLinkedHashMultiCollection.Element {
^
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:1326:
error: cannot find symbol
public static class FinalizedFeatureKeyCollection extends
ImplicitLinkedHashMultiCollection<FinalizedFeatureKey> {
^
symbol: class ImplicitLinkedHashMultiCollection
location: class ApiVersionsResponseData
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ApiVersionsResponseData.java:1087:
error: package ImplicitLinkedHashMultiCollection does not exist
public static class FinalizedFeatureKey implements Message,
ImplicitLinkedHashMultiCollection.Element {
^
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/ResponseHeaderData.java:36:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/RequestHeaderData.java:37:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchRequestData.java:41:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchResponseData.java:45:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
^
symbol: class ByteUtils
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchResponseData.java:46:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashCollection;
^
symbol: class ImplicitLinkedHashCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchResponseData.java:47:
error: cannot find symbol
import org.apache.kafka.common.utils.ImplicitLinkedHashMultiCollection;
^
symbol: class ImplicitLinkedHashMultiCollection
location: package org.apache.kafka.common.utils
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchResponseData.java:2573:
error: cannot find symbol
public static class NodeEndpointCollection extends
ImplicitLinkedHashMultiCollection<NodeEndpoint> {
^
symbol: class ImplicitLinkedHashMultiCollection
location: class FetchResponseData
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/FetchResponseData.java:2271:
error: package ImplicitLinkedHashMultiCollection does not exist
public static class NodeEndpoint implements Message,
ImplicitLinkedHashMultiCollection.Element {
^
/home/sidna/kafka/clients/build/generated/main/java/org/apache/kafka/common/message/MetadataResponseData.java:42:
error: cannot find symbol
import org.apache.kafka.common.utils.ByteUtils;
--
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]