>From the threaddump it looks like your app did get the exception and the
main thread exited - i.e., it does not appear in the stacktrace. You should
enclose the producer send with a try/catch and finally that closes the
producer.


On Thu, Nov 15, 2012 at 3:19 PM, Paul Mackles <pmack...@adobe.com> wrote:

> Thanks. Thread dump from hung producer app here:
>
> https://gist.github.com/4082265
>
> In case anyone has any insights.
>
> On 11/15/12 5:30 PM, "Neha Narkhede" <neha.narkh...@gmail.com> wrote:
>
> >Paul,
> >
> >This behavior is unexpected and the code suggests QueueFullException
> >is thrown back to the caller. I would take a thread dump when the
> >producer is blocked to see what's causing the blocking behavior.
> >
> >Thanks,
> >Neha
> >
> >On Thu, Nov 15, 2012 at 12:53 PM, Paul Mackles <pmack...@adobe.com>
> wrote:
> >> I am tinkering with the java async producer from kafka 7.2 and I am
> >>trying to write a client that will never block when sending messages to
> >>a kafka broker (dropping them would be better than blocking). I can send
> >>messages at a rate that is fast enough to trigger a QueueFullException
> >>but the exception never propagates up to my client code. In other words,
> >>I see the stack trace and the error message on the console but the call
> >>to Producer.send() that triggered the exception just hangs indefinitely.
> >>In this setup, queue.enqueueTimeout.ms=0. I get the same result when I
> >>set queue.enqueueTimeout.ms to a very low number positive number. Is
> >>this the intended behavior? Is there another way to guarantee your
> >>client can never block? If I had to guess, maybe the exception is
> >>happening in a background thread of some kind and that is why I never
> >>see it? My knowledge of scala is extremely limited. Here is the code I
> >>am using:
> >>
> >> https://gist.github.com/4081183
> >>
> >> Thanks,
> >> Paul
> >>
>
>

Reply via email to