Hi Alexander,

The simple topology like the one you have mentioned with a single spout and a 
stateful bolt with an empty execute works for me. I assume you are anchoring 
the tuple in the spout’s emit. 

For a stateful topology, the acking doesn’t work if a bolt extends from 
BaseBasicBolt or if theres an “ack" call in the bolt’s execute.

You could open a JIRA (https://issues.apache.org/jira/browse/STORM) and share 
the sample topology code where you see this issue.

Thanks,
Arun


From:  Alexander T
Reply-To:  "[email protected]"
Date:  Friday, March 4, 2016 at 11:15 PM
To:  "[email protected]"
Subject:  Re: Stateful bolts and acking

Hi Arun,

Thank you for your reply. I have tried both manual and automatic acking, and 
neither works. Or rather, the acker is running but my spout is still receiving 
failure callbacks after the message timeout. I have a simple topology with a 
single spout reading from a file and a single empty bolt doing nothing. If I 
change from an empty stateless bolt to an empty  stateful bolt the acking stops 
working.

Should I proceed with sending this in as a reproducing test case? Or is there 
anything else which I might have missed?

Regards,
Alexander

On Mar 4, 2016 5:30 PM, "Arun Mahadevan" <[email protected]> wrote:
Hi Alexander,

For a stateful topology the anchoring and acking is automatically taken care 
of. 

Can you check if any of your bolts inherit BaseBasicBolt or if you are manually 
acking. Your non-stateful bolts could inherit from BaseRichBolt instead.

Thanks,
Arun


From: Alexander T
Reply-To: "[email protected]"
Date: Friday, March 4, 2016 at 8:04 PM
To: "[email protected]"
Subject: Stateful bolts and acking

Hello! 

I'm on the 1.x-branch and trying to use the stateful bolts. But I cannot get it 
to work with acking. No matter what I try acking simply doesn't seem to have 
any effect. I see acking tasks suceeding in the logs (ack tuples forwarded to 
the acker, acker runs successfully), but still acking is not succesful and the 
tuples fail after the message timeout. I've not been successful in debugging 
the acker and the rotating map to figure out why acking is not completing. I 
was wondering if acking is supposed to work with stateful bolts, if so how and 
if there are any examples? Any ideas would be appreciated.

Best regards,

Alexander T

Reply via email to