You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Jason Gustafson (Jira)" <ji...@apache.org> on 2022/08/22 17:38:00 UTC

[jira] [Updated] (KAFKA-13166) EOFException when Controller handles unknown API

     [ https://issues.apache.org/jira/browse/KAFKA-13166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jason Gustafson updated KAFKA-13166:
------------------------------------
    Fix Version/s:     (was: 3.4.0)

> EOFException when Controller handles unknown API
> ------------------------------------------------
>
>                 Key: KAFKA-13166
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13166
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: David Arthur
>            Assignee: David Arthur
>            Priority: Minor
>             Fix For: 3.3.0
>
>
> When ControllerApis handles an unsupported RPC, it silently drops the request due to an unhandled exception. 
> The following stack trace was manually printed since this exception was suppressed on the controller. 
> {code}
> java.util.NoSuchElementException: key not found: UpdateFeatures
> 	at scala.collection.MapOps.default(Map.scala:274)
> 	at scala.collection.MapOps.default$(Map.scala:273)
> 	at scala.collection.AbstractMap.default(Map.scala:405)
> 	at scala.collection.mutable.HashMap.apply(HashMap.scala:425)
> 	at kafka.network.RequestChannel$Metrics.apply(RequestChannel.scala:74)
> 	at kafka.network.RequestChannel.$anonfun$updateErrorMetrics$1(RequestChannel.scala:458)
> 	at kafka.network.RequestChannel.$anonfun$updateErrorMetrics$1$adapted(RequestChannel.scala:457)
> 	at kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62)
> 	at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.foreachEntry(JavaCollectionWrappers.scala:359)
> 	at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.foreachEntry$(JavaCollectionWrappers.scala:355)
> 	at scala.collection.convert.JavaCollectionWrappers$AbstractJMapWrapper.foreachEntry(JavaCollectionWrappers.scala:309)
> 	at kafka.network.RequestChannel.updateErrorMetrics(RequestChannel.scala:457)
> 	at kafka.network.RequestChannel.sendResponse(RequestChannel.scala:388)
> 	at kafka.server.RequestHandlerHelper.sendErrorOrCloseConnection(RequestHandlerHelper.scala:93)
> 	at kafka.server.RequestHandlerHelper.sendErrorResponseMaybeThrottle(RequestHandlerHelper.scala:121)
> 	at kafka.server.RequestHandlerHelper.handleError(RequestHandlerHelper.scala:78)
> 	at kafka.server.ControllerApis.handle(ControllerApis.scala:116)
> 	at kafka.server.ControllerApis.$anonfun$handleEnvelopeRequest$1(ControllerApis.scala:125)
> 	at kafka.server.ControllerApis.$anonfun$handleEnvelopeRequest$1$adapted(ControllerApis.scala:125)
> 	at kafka.server.EnvelopeUtils$.handleEnvelopeRequest(EnvelopeUtils.scala:65)
> 	at kafka.server.ControllerApis.handleEnvelopeRequest(ControllerApis.scala:125)
> 	at kafka.server.ControllerApis.handle(ControllerApis.scala:103)
> 	at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:75)
> 	at java.lang.Thread.run(Thread.java:748)
> {code}
> This is due to a bug in the metrics code in RequestChannel.
> The result is that the request fails, but no indication is given that it was due to an unsupported API on either the broker, controller, or client.



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