[ https://issues.apache.org/jira/browse/APEXCORE-222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15349909#comment-15349909 ]
ASF GitHub Bot commented on APEXCORE-222: ----------------------------------------- Github user sandeshh commented on a diff in the pull request: https://github.com/apache/apex-core/pull/350#discussion_r68496137 --- Diff: engine/src/main/java/com/datatorrent/stram/engine/StreamingContainer.java --- @@ -769,7 +769,11 @@ public void processHeartbeatResponse(ContainerHeartbeatResponse rsp) } if (rsp.committedWindowId != lastCommittedWindowId) { + lastCommittedWindowId = rsp.committedWindowId; + + bufferServer.purge(lastCommittedWindowId); --- End diff -- Wrote a sample application and tested this change by killing the containers. There was no issue and the recovery started from the expected window id ( committed + 1 ). Still not sure why we have to keep the window data of the committed window. > Delegate Buffer Server purge to StreamingContainer > -------------------------------------------------- > > Key: APEXCORE-222 > URL: https://issues.apache.org/jira/browse/APEXCORE-222 > Project: Apache Apex Core > Issue Type: Improvement > Reporter: Thomas Weise > Assignee: Sandesh > > Currently the purge requests are sent to the buffer servers from the app > master. This interaction exists parallel to the heartbeat protocol. Instead, > the committed window ID that is propagated through the heartbeat response can > be used in StreamingContainer to initiate the purge with the local buffer > server, similar to how the committed callback on the operator occurs. -- This message was sent by Atlassian JIRA (v6.3.4#6332)