So let’s say we have a single threaded topology with single worker. Doesn’t 
this mean that if a my computation gets stuck at some point all the messages in 
the queue get blocked too? Because the fail method will be called on the queue 
but there is no thread to process the next message. Is that correct?

From: Nathan Leung [mailto:[email protected]]
Sent: Monday, July 20, 2015 4:07 PM
To: user
Subject: Re: What happens when a message times out?

The computation (and the tuple) continue on.  The fail() method will be called 
on the spout with the message id.

On Mon, Jul 20, 2015 at 1:51 PM, Mark Tomko 
<[email protected]<mailto:[email protected]>> wrote:
Suppose we have a simple topology with a spout and a single bolt, and the tuple 
timeout is set to some value. When a message exceeds the processing time 
allotted, even if the bolt is still working, what happens to that computation? 
Does the framework kill the bolt or interrupt the executing thread and 
reallocate it to some other message? Does it leave the bolt working to finish 
its work, starting a new thread in its place?

Thanks,
Mark

Reply via email to