Bill Sobel created STORM-2183:
---------------------------------

             Summary: BaseStatefulBoltExecutor does not handle cyclic graphs
                 Key: STORM-2183
                 URL: https://issues.apache.org/jira/browse/STORM-2183
             Project: Apache Storm
          Issue Type: Bug
          Components: storm-core
    Affects Versions: 1.x
         Environment: Java 1.8
            Reporter: Bill Sobel


BaseStatefulBoltExecutor::getCheckpointInputTaskCount() returns the number of 
sources that a state transaction must wait for to process a transaction.  In a 
graph where there is a loop (e.g. A->B->C->D->C) components 'C' and 'D' the 
required number of tuples can will never be received.  The function 
shouldProcessTransaction will never receive the correct number of tuples, 
because the set required to come back form 'D' to 'C' will never be forwarded 
from 'C' to  'D' to begin with.  

Bolt 'C' and 'D' never finish the state initialization step and as such will 
never pass tuples to their wrapped bolt.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to