Alexey Ozeritskiy created KAFKA-2174:
----------------------------------------

             Summary: Wrong TopicMetadata deserialization
                 Key: KAFKA-2174
                 URL: https://issues.apache.org/jira/browse/KAFKA-2174
             Project: Kafka
          Issue Type: Bug
    Affects Versions: 0.8.2.1
            Reporter: Alexey Ozeritskiy


TopicMetadata.readFrom assumes that ByteBuffer always contains the full set of 
partitions but it is not true. On incomplete metadata we will get 
java.lang.ArrayIndexOutOfBoundsException:
{code}
java.lang.ArrayIndexOutOfBoundsException: 47
        at 
kafka.api.TopicMetadata$$anonfun$readFrom$1.apply$mcVI$sp(TopicMetadata.scala:38)
        at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:141)
        at kafka.api.TopicMetadata$.readFrom(TopicMetadata.scala:36)
        at 
kafka.api.TopicMetadataResponse$$anonfun$3.apply(TopicMetadataResponse.scala:31)
        at 
kafka.api.TopicMetadataResponse$$anonfun$3.apply(TopicMetadataResponse.scala:31)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.immutable.Range.foreach(Range.scala:141)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at 
kafka.api.TopicMetadataResponse$.readFrom(TopicMetadataResponse.scala:31)
{code}
We sometimes get this exceptions on any broker restart (kill -TERM, 
controlled.shutdown.enable=false).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to