Github user vrozov commented on a diff in the pull request:
https://github.com/apache/apex-core/pull/350#discussion_r67635187
--- 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 --
While currently buffer server by itself does not make any assumption
regarding locality and communicates with its clients (publisher, subscriber,
controller) over network request API, Apex supports deployment of the buffer
server into the same container as the upstream operator/publisher only. As the
buffer server is not fault tolerant, and there is no plan to make it fault
tolerant, in reality, there is no flexibility to deploy buffer server into
another container other than the upstream operator container. Additionally, as
long as the buffer server continues to support purge request submitted over a
network, the flexibility to deploy buffer server in any container still can be
exercised once (or if) fault tolerance is supported by the buffer server.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---