Luke Chen created KAFKA-15670:
---------------------------------

             Summary: KRaft controller using wrong listener to send RPC to 
brokers in dual-write mode 
                 Key: KAFKA-15670
                 URL: https://issues.apache.org/jira/browse/KAFKA-15670
             Project: Kafka
          Issue Type: Bug
    Affects Versions: 3.6.0
            Reporter: Luke Chen


During ZK migrating to KRaft, before entering dual-write mode, the KRaft 
controller will send RPCs (i.e. UpdateMetadataRequest, LeaderAndIsrRequest, and 
StopReplicaRequest) to the brokers. Currently, we use the inter broker listener 
to send the RPC to brokers from the controller. Although these RPCs are used 
for ZK brokers, in our case, the sender is actually KRaft controller. In KRaft 
mode, the controller should talk with brokers via `controller.listener.names`, 
not `inter.broker.listener.names`. It would be surprised that the KRaft 
controller config should contain `inter.broker.listener.names`.

 
{code:java}
[2023-10-23 17:12:36,788] ERROR Encountered zk migration fault: Unhandled error 
in SendRPCsToBrokersEvent (org.apache.kafka.server.fault.LoggingFaultHandler)
kafka.common.BrokerEndPointNotAvailableException: End point with listener name 
PLAINTEXT not found for broker 0
        at kafka.cluster.Broker.$anonfun$node$1(Broker.scala:94)
        at scala.Option.getOrElse(Option.scala:201)
        at kafka.cluster.Broker.node(Broker.scala:93)
        at 
kafka.controller.ControllerChannelManager.addNewBroker(ControllerChannelManager.scala:122)
        at 
kafka.controller.ControllerChannelManager.addBroker(ControllerChannelManager.scala:105)
        at 
kafka.migration.MigrationPropagator.$anonfun$publishMetadata$2(MigrationPropagator.scala:97)
        at 
kafka.migration.MigrationPropagator.$anonfun$publishMetadata$2$adapted(MigrationPropagator.scala:97)
        at scala.collection.immutable.Set$Set1.foreach(Set.scala:168)
        at 
kafka.migration.MigrationPropagator.publishMetadata(MigrationPropagator.scala:97)
        at 
kafka.migration.MigrationPropagator.sendRPCsToBrokersFromMetadataImage(MigrationPropagator.scala:217)
        at 
org.apache.kafka.metadata.migration.KRaftMigrationDriver$SendRPCsToBrokersEvent.run(KRaftMigrationDriver.java:723)

{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to