Thanks Nathan! appreciate you taking the time to answer my questions! On Wed, Dec 24, 2014 at 9:34 PM, Nathan Marz <[email protected]> wrote:
> Correct, that's the line that guards it. In Clojure destructuring nil like > that causes all the destructured fields to be nil. > > On Tue, Dec 23, 2014 at 7:20 AM, Daniel Schonfeld <[email protected] > > wrote: >> >> Nathan, >> >> Is that guarded in executor.clj by the (when spout-id clause (on 441 on >> v0.9.3 tag)? I'm assuming it would all be null since (.remove pending id) >> would return back bulk after the first. >> >> Is my reading / understanding correct? >> >> Thanks much! It's interesting to look at the internals and see how our >> topologies are powered. >> >> Daniel >> >> On Tuesday, December 23, 2014, Nathan Marz <[email protected]> wrote: >> >>> The spout will ignore any acks or fails after the first one to account >>> for this possibility. >>> >>> On Mon, Dec 22, 2014 at 8:10 AM, Daniel Schonfeld < >>> [email protected]> wrote: >>>> >>>> Hello, >>>> >>>> I am trying to understand some of the storm code base and I've run into >>>> this question regarding the use of RotatingMap in acker.clj and >>>> executor.clj. It's probably my lack of understand of how the code works, >>>> but i figured there is no harm in asking. >>>> >>>> So I see that in the spout, the rotating map combined with a tick tuple >>>> set to TOPOLOGY-MESSAGE-TIMEOUT-SECS is used to timeout the tuple at the >>>> spout subsequently calling the fail() method. >>>> >>>> I also see that inside the acker the same mechanism is used. >>>> >>>> The question is what happens when the spout fails the tuple from a >>>> timeout, but the bolts continue processing the tuple's children so part of >>>> the tuple DAG. They keep sending ACK messages to the acker and update the >>>> key in the RotatingMap there by causing the tuple to not timeout at the >>>> acker even though it already did at the spout. >>>> >>>> Is there a possibility of receiving both a fail() and an ack() at the >>>> *spout* given the above condition? >>>> >>>> Thanks! >>>> Daniel >>>> >>> >>> >>> -- >>> Twitter: @nathanmarz >>> http://nathanmarz.com >>> >> > > -- > Twitter: @nathanmarz > http://nathanmarz.com >
