[
https://issues.apache.org/jira/browse/STORM-870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14594173#comment-14594173
]
Jungtaek Lim commented on STORM-870:
------------------------------------
In brief, it is intentional.
STORM-329 changes reconnection strategy, which is dropping messages while
connection is unavailable.
[Guaranteeing message
processing|https://storm.apache.org/documentation/Guaranteeing-message-processing.html]
will replay tuple tree, so it has to be calculated whole tuple tree again, but
it still guarantee at-least-once message processing.
Btw, Spout has its pending messages waiting for ack / fail / timeout to
"memory", so sending ack to "new Spout" has no effect.
It means that Storm already relied on "at-least-once replay" at this situation
before STORM-329.
Here's javadoc for Client.handleMessagesWhenConnectionIsUnavailable().
{quote}
We will drop pending messages and let at-least-once message replay kick in.
Another option would be to buffer the messages in memory. But this option has
the risk of causing OOM errors, especially for topologies that disable message
acking because we don't know whether the connection recovery will succeed or
not, and how long the recovery will take.
{quote}
Hope this helps.
Since it is not a bug, I'll close this issue.
> Tuples emitted just before spout restarts are not acked/failed
> --------------------------------------------------------------
>
> Key: STORM-870
> URL: https://issues.apache.org/jira/browse/STORM-870
> Project: Apache Storm
> Issue Type: Bug
> Affects Versions: 0.9.3, 0.9.4, 0.9.5
> Reporter: Pradeep V Badiger
>
> The tuples emitted just before the spout restarts are never acked/failed
> after the tuple tree completes. The spout never gets notified but the worker
> log for the spout has the below log during its restart.
> 2015-06-18T14:47:01.430+0000 b.s.m.n.Client [ERROR] connection to
> Netty-Client-localhost/127.0.0.1:6701 is unavailable
> 2015-06-18T14:47:01.433+0000 b.s.m.n.Client [DEBUG] successfully connected to
> localhost/127.0.0.1:6701, [id: 0x9a243253, /127.0.0.1:36638 =>
> localhost/127.0.0.1:6701] [attempt 1]
> 2015-06-18T14:47:01.433+0000 b.s.m.n.Client [ERROR] dropping 1 message(s)
> destined for Netty-Client-localhost/127.0.0.1:6701
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)