chia7712 commented on code in PR #18845: URL: https://github.com/apache/kafka/pull/18845#discussion_r1956525411
########## metadata/src/main/java/org/apache/kafka/image/node/MetadataNode.java: ########## @@ -53,7 +53,8 @@ default void print(MetadataNodePrinter printer) { for (String name : names) { printer.enterNode(name); MetadataNode child = child(name); - child.print(printer); + if (child != null) + child.print(printer); Review Comment: In reading the code of child, I notice that it seems the `AclsImageByIdNode` is misplaced. ``` private static final Map<String, Function<MetadataImage, MetadataNode>> CHILDREN = Map.of( ... // AclsImageByIdNode should be replaced by AclsImageNode AclsImageNode.NAME, image -> new AclsImageByIdNode(image.acls()), ScramImageNode.NAME, image -> new ScramImageNode(image.scram()), DelegationTokenImageNode.NAME, image -> new DelegationTokenImageNode(image.delegationTokens()) ); ``` https://github.com/apache/kafka/blob/48283ad2e54133ebb604769dc8a72706e07f36e7/metadata/src/main/java/org/apache/kafka/image/node/MetadataImageNode.java#L46 and `AclsImage#toString` has similar issue. ``` @Override public String toString() { // AclsImageByIdNode should be replaced by AclsImageNode return new AclsImageByIdNode(this).stringify(); } ``` https://github.com/apache/kafka/blob/trunk/metadata/src/main/java/org/apache/kafka/image/AclsImage.java#L78 @ijuma @mumrah WDYT? -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org