Robert Joseph Evans resolved STORM-1837.
       Resolution: Fixed
    Fix Version/s: 1.1.0

Thanks [~Srdo],

I merged this into master and branch-1.x

> Running local clusters without simulating time breaks 
> Testing.completeTopology, and may cause message loss
> ----------------------------------------------------------------------------------------------------------
>                 Key: STORM-1837
>                 URL: https://issues.apache.org/jira/browse/STORM-1837
>             Project: Apache Storm
>          Issue Type: Bug
>    Affects Versions: 1.0.0, 2.0.0, 1.0.1
>            Reporter: Stig Rohde Døssing
>            Assignee: Stig Rohde Døssing
>            Priority: Minor
>             Fix For: 2.0.0, 1.1.0
>          Time Spent: 2h
>  Remaining Estimate: 0h
> Since https://github.com/apache/storm/pull/810 it is no longer possible to 
> call Testing.completeTopology when time is not simulating, because a call to 
> advance-cluster-time is made from the function, which calls Time/advanceTime. 
> advance-cluster-time should only be called if time is simulating.
> Since https://github.com/apache/storm/pull/830 a local cluster run without 
> time simulation may lose messages. When a worker emits messages for a worker 
> that hasn't started yet, the message is lost. This can happen because spouts 
> may start emitting before all workers have started, when time simulation is 
> disabled. Local clusters usually run without message timeouts, so this will 
> make tests relying on Testing.withLocalCluster flaky.
> The problem is that there are no longer any queues to store messages for 
> workers that haven't started yet. See 
> https://github.com/apache/storm/pull/830/files#diff-c6ff4208ef84c7a5a1a6b8b6bd1f7d19R104.
>  A queue should be added for messages for workers that haven't registered a 
> receive callback yet.

This message was sent by Atlassian JIRA

Reply via email to