Uploaded image for project: 'Samza'
  1. Samza
  2. SAMZA-643

Improve error message for null stream in OutgoingMessageEnvelope

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 0.9.0
    • 0.10.0
    • kafka

    Description

      If you accidentally pass null as the stream name in an OutgoingMessageEnvelope, you get an NPE in the producer IO thread for Kafka. The Kafka producer shouldn't really throw NPE for this (https://issues.apache.org/jira/browse/KAFKA-2105) but Samza should probably throw a more friendly error sooner.

      Uncaught error in kafka producer I/O thread:
      java.lang.NullPointerException
      at org.apache.kafka.common.utils.Utils.utf8Length(Utils.java:174)
      at org.apache.kafka.common.protocol.types.Type$5.sizeOf(Type.java:176)
      at org.apache.kafka.common.protocol.types.ArrayOf.sizeOf(ArrayOf.java:55)
      at org.apache.kafka.common.protocol.types.Schema.sizeOf(Schema.java:81)
      at org.apache.kafka.common.protocol.types.Struct.sizeOf(Struct.java:218)
      at org.apache.kafka.common.requests.RequestSend.serialize(RequestSend.java:35)
      at org.apache.kafka.common.requests.RequestSend.<init>(RequestSend.java:29)
      at org.apache.kafka.clients.NetworkClient.metadataRequest(NetworkClient.java:369)
      at org.apache.kafka.clients.NetworkClient.maybeUpdateMetadata(NetworkClient.java:391)
      at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:188)
      at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:191)
      at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:122)
      at java.lang.Thread.run(Thread.java:745)

      Attachments

        1. SAMZA-643.patch
          4 kB
          Gustavo Anatoly

        Activity

          People

            gustavoanatoly Gustavo Anatoly
            theduderog Roger Hoover
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: