rmatharu commented on a change in pull request #903: SEP-19: Allocator changes
for standby-aware container allocation, and active container failover
URL: https://github.com/apache/samza/pull/903#discussion_r260920529
##########
File path:
samza-core/src/main/java/org/apache/samza/clustermanager/HostAwareContainerAllocator.java
##########
@@ -81,13 +87,27 @@ public void assignResourceRequests() {
if (expired) {
updateExpiryMetrics(request);
- if (resourceAvailableOnAnyHost) {
- log.info("Request for container: {} on {} has expired. Running on
ANY_HOST", request.getContainerID(), request.getPreferredHost());
- runStreamProcessor(request, ResourceRequestState.ANY_HOST);
+
+ if (standbyContainerManager.isPresent()) {
+
+ // if standby is enabled and an alternative-anyhost-resource is
available, we try to use it
+ if (resourceAvailableOnAnyHost) {
+
standbyContainerManager.get().handleExpiredResourceRequest(containerID,
request, Optional.of(peekAllocatedResource(ResourceRequestState.ANY_HOST)),
this, resourceRequestState);
+ } else {
+
standbyContainerManager.get().handleExpiredResourceRequest(containerID,
request, Optional.empty(), this, resourceRequestState);
Review comment:
Because the StandbyContainerManager has a single method to handle expired
requests, if there is no alternate resource on anyHost available, we invoke it
with an empty optional resource.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services