Github user XuMingmin commented on the issue:
https://github.com/apache/storm/pull/1919
when ack=0, explicit ack()/fail() should not take affects as no AckExecutor
is running.
Regarding to spout crash, possiblely some tuples are replayed in a
periodically commit manner, unless offset is committed after every emit, that's
a trade-off for performance.
Another point, may need to skip messageId in SpoutOutputCollector.emit()
when auto-commit, to disable ack permanently:
>> public List<Integer> emit(List<Object> tuple) Emits a tuple to the
default output stream with a null message id. Storm will not track this message
so ack and fail will never be called for this tuple. The emitted values must be
immutable.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---