Hi, I have checked the source of Storm executor.clj, ticks is an independent timer thread and it does not care whether the topology is alive or dead. It just send information to `receive-queue` with stream id `_tick`. But I think there is question that only the `spout` executor can receive this tick info. Maybe you can setup a spout for sending time info to the bolt while it will complicate the solution. Just for your information.
Best Regards 2015-06-08 20:52 GMT+08:00 Dan Blanchard <[email protected]>: > > As part of the development of streamparse > <https://github.com/Parsely/streamparse/>, we have a BatchingBolt that > processes tuples in batches. It's intended for use with things like > databases that are more performant when you send things in batches. > > I've recently proposed switching our BatchingBolt implementation over from > using a timer/thread approach to using tick tuples; however, one of my > fellow devs pointed out that with our current approach the final batch will > definitely get processed when a topology is shutdown (and it's in the > inactive state), whereas that won’t happen if tick tuples aren’t arriving > to trigger batch processing. Unfortunately, whether or not tick tuples > keep getting sent when I topology is inactive isn't explicitly documented > anywhere I can find. > > Therefore, my question is this: does Storm continue sending tick tuples to > bolts after a kill/deactivate has been issued, while it is in the > waiting/inactive period? The topology lifecycle docs > <http://storm.apache.org/documentation/Lifecycle-of-a-topology.html> don't > make it clear. > > Thanks, > > Dan > > PS: I also posted this as a StackOverflow question > <http://stackoverflow.com/questions/30538252/does-storm-keep-sending-tick-tuples-to-bolts-when-a-topology-is-deactivated>, > if you want to respond there. > >
