[ https://issues.apache.org/jira/browse/APEXCORE-222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15367181#comment-15367181 ]
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_r70022763 --- Diff: bufferserver/src/main/java/com/datatorrent/bufferserver/server/Server.java --- @@ -199,6 +199,13 @@ private void handlePurgeRequest(PurgeRequestTuple request, final AbstractLengthP } } + public void purge(long windowId) + { + for (DataList dataList: publisherBuffers.values()) { --- End diff -- Purge inside the *Block* is not thread safe, but the Purge inside the *DataList* calls the Block purge using Synchronized block. So it should be fine. > 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)