Mind that the "at least once" guarantees applies only to "regular" processing (i.e. storm will replay tuples that time out). Re-emitting when one of the bolts fails explicitly is your responsibility (on the spout code).
On Tue, Jun 9, 2015 at 5:49 PM, Andrew Xor <[email protected]> wrote: > Regular topologies do not provide a time order guarantee but provide at > least once guarantees (which means that each tuple will be processed once > or more times). If you want order guarantees or exactly once semantics you > will have to use Trident. > > Regards > On Wed, Jun 10, 2015 at 12:25 AM [email protected] <[email protected]> > wrote: > >> Hi, >> >> I'm a beginner in Storm and would appreciate your help. >> Does Storm (not using Trident or Transactional topologies) guarantee that >> a message that is sent to spout first will always be committed first over >> all stages of spouts/bolts (even in the case of failure)? i.e. the message >> arrived at time "t" will always be committed before the message arrived at >> time "t+T" for some delay T over all stages of spouts/bolts? Thanks a lot. >> >> Best regards, >> M.Y. >> > -- Javier González Nicolini
