[
https://issues.apache.org/jira/browse/KAFKA-709?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13558500#comment-13558500
]
Joe Stein commented on KAFKA-709:
---------------------------------
found a test failing related to this
the fix I think is best to just update the AsyncProducerTest case for if
someone changes the new default value to something like 0 so it goes to offer
instead of put
adding the line props.put("queue.enqueue.timeout.ms", "0")
going to commit this change to AsyncProducerTest.testProducerQueueSize (line
68) so it passes again
> Default queue.enqueue.timeout.ms to -1
> --------------------------------------
>
> Key: KAFKA-709
> URL: https://issues.apache.org/jira/browse/KAFKA-709
> Project: Kafka
> Issue Type: Bug
> Components: producer
> Affects Versions: 0.8
> Reporter: Chris Riccomini
> Assignee: Neha Narkhede
> Attachments: kafka-709.patch
>
>
> Hey Guys,
> It seems that, by default, producers in 0.8 are async, and have a default
> queue.enqueue.timeout.ms of 0. This means that anyone who reads messages
> faster than they're producing them will likely end up eventually hitting this
> exception:
> Exception in thread "Thread-3" kafka.common.QueueFullException: Event queue
> is full of unsent messages, could not send event:
> KeyedMessage(PageViewEventByGroupJson,Missing Page
> Group,java.nio.HeapByteBuffer[pos=0 lim=125 cap=125])
> at
> kafka.producer.Producer$$anonfun$asyncSend$1.apply(Producer.scala:111)
> at
> kafka.producer.Producer$$anonfun$asyncSend$1.apply(Producer.scala:89)
> at
> scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:34)
> at
> scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:32)
> at kafka.producer.Producer.asyncSend(Producer.scala:89)
> at kafka.producer.Producer.send(Producer.scala:77)
> As it says in https://cwiki.apache.org/KAFKA/kafka-mirroring.html, this can
> result in losing messages, and nasty exceptions in the logs. I think the
> better default is setting queue.enqueue.timeout.ms to -1, which will just
> block until the queue frees up.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira