You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@storm.apache.org by Kashyap Mhaisekar <ka...@gmail.com> on 2015/07/27 21:55:25 UTC

Process Latency < Execute latency for BaseBasicBolt?

Hi,
My topology is based on BaseBasicBolt and hence the ack method should done
after the execute method. But I see that the Process Latency is much lower
than Execute Latency should it not be the other way round? Any reasons why
this happens?

Also, my topology shows the "complete latency" in Spout as 0. Should this
not indicate the overall time taken for a message to get completely acked?
meaning the message getting totally processed?

Thanks
Kashyap

Re: Process Latency < Execute latency for BaseBasicBolt?

Posted by 임정택 <ka...@gmail.com>.
Hi,

If you use Storm 0.9.x then https://issues.apache.org/jira/browse/STORM-788 may
be a reason to process latency < execute latency.
It's merged to master and 0.10.0-beta, but not backported yet.

Hope this helps.

Thanks,
Jungtaek Lim (HeartSaVioR)

2015-07-28 4:55 GMT+09:00 Kashyap Mhaisekar <ka...@gmail.com>:

> Hi,
> My topology is based on BaseBasicBolt and hence the ack method should done
> after the execute method. But I see that the Process Latency is much lower
> than Execute Latency should it not be the other way round? Any reasons why
> this happens?
>
> Also, my topology shows the "complete latency" in Spout as 0. Should this
> not indicate the overall time taken for a message to get completely acked?
> meaning the message getting totally processed?
>
> Thanks
> Kashyap
>
>


-- 
Name : 임 정택
Blog : http://www.heartsavior.net / http://dev.heartsavior.net
Twitter : http://twitter.com/heartsavior
LinkedIn : http://www.linkedin.com/in/heartsavior

Re: Process Latency < Execute latency for BaseBasicBolt?

Posted by "Matthias J. Sax" <mj...@informatik.hu-berlin.de>.
Hi,
I am not sure, but I doubt that BaseBasicBolt does ack automatically.
Process-Latency should be lower, if a tuple is acked before execute
finishes. So if you ack within execute, this should be normal.

For complete latency at spout you are right. If it should 0, it raises
the question if you enable fault-tolerance (ie, assign message IDs at
the spout?). Latency can only be measure if ID are assigned and proper
anchoring in done in bolts.

See here for more details:
https://storm.apache.org/documentation/Guaranteeing-message-processing.html


-Matthias


On 07/27/2015 09:55 PM, Kashyap Mhaisekar wrote:
> Hi,
> My topology is based on BaseBasicBolt and hence the ack method should
> done after the execute method. But I see that the Process Latency is
> much lower than Execute Latency should it not be the other way round?
> Any reasons why this happens?
> 
> Also, my topology shows the "complete latency" in Spout as 0. Should
> this not indicate the overall time taken for a message to get completely
> acked? meaning the message getting totally processed?
> 
> Thanks
> Kashyap
>