Have you enabled the acker and override the fail() method on your Spout?
On Thu, Jun 5, 2014 at 9:15 AM, 傅駿浩 <[email protected]> wrote: > Hi, all > > I do the simple topology in distributed mode as follows: > Spout: collector.emit(new Values(index)); //where index is a integer from > 1,2,......to 100000, each nextTuple will emit the next number > Bolt: LOG.info("I'm Bolt, index is " + tuple.getInteger(0)) //write the > number this bolt gets to my log > > As topology starts, I'll see... > I'm Bolt, index is 1 > I'm Bolt, index is 2 > I'm Bolt, index is 3 > . > . > . > I'm Bolt, index is 45656 > =============now, I kill this worker who is working for this bolt======== > kill -9 [pid] > ======================================================== > I find supervisor will reassign the bolt task to a new worker of new port > for several seconds, but it'll miss a lot of data. In other words, the new > worker's log we can see only from "I'm Bolt, index is 55234" for example > instead of index from 45657. In this situation, if my node dies, storm > can't replay the tuple again so that my bolt gets something muss? Thanks > for your answering! > > James Fu > >
