You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@storm.apache.org by et...@apache.org on 2020/02/27 19:18:51 UTC
[storm] branch master updated: [STORM-3575] Improve status message
on failure for RAS scheduler
This is an automated email from the ASF dual-hosted git repository.
ethanli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/storm.git
The following commit(s) were added to refs/heads/master by this push:
new 4d40ae0 [STORM-3575] Improve status message on failure for RAS scheduler
new 1c5e096 Merge pull request #3205 from RuiLi8080/STORM-3575
4d40ae0 is described below
commit 4d40ae0bea4c372af2e795a1091c4dc3c02c28b3
Author: Rui Li <ru...@verizonmedia.com>
AuthorDate: Fri Feb 7 09:49:03 2020 -0600
[STORM-3575] Improve status message on failure for RAS scheduler
---
.../storm/scheduler/resource/ResourceAwareScheduler.java | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/storm-server/src/main/java/org/apache/storm/scheduler/resource/ResourceAwareScheduler.java b/storm-server/src/main/java/org/apache/storm/scheduler/resource/ResourceAwareScheduler.java
index 75ae8c7..ddead19 100644
--- a/storm-server/src/main/java/org/apache/storm/scheduler/resource/ResourceAwareScheduler.java
+++ b/storm-server/src/main/java/org/apache/storm/scheduler/resource/ResourceAwareScheduler.java
@@ -217,7 +217,7 @@ public class ResourceAwareScheduler implements IScheduler {
if (!evictedSomething) {
StringBuilder message = new StringBuilder();
- message.append("Not enough resources to schedule ");
+ message.append("Not enough resources to schedule after evicting lower priority topologies. ");
message.append(topologySchedulingResources.getRemainingRequiredResourcesMessage());
message.append(result.getErrorMessage());
markFailedTopology(topologySubmitter, cluster, td, message.toString());
@@ -236,7 +236,12 @@ public class ResourceAwareScheduler implements IScheduler {
return;
}
}
- markFailedTopology(topologySubmitter, cluster, td, "Failed to schedule within " + maxSchedulingAttempts + " attempts");
+ // We can only reach here when we failed to free enough space by evicting current topologies after {maxSchedulingAttempts}
+ // while that scheduler did evict something at each attempt.
+ markFailedTopology(topologySubmitter, cluster, td,
+ "Failed to make enough resources for " + td.getId()
+ + " by evicting lower priority topologies within " + maxSchedulingAttempts + " attempts. "
+ + topologySchedulingResources.getRemainingRequiredResourcesMessage());
}
/*
@@ -373,7 +378,6 @@ public class ResourceAwareScheduler implements IScheduler {
String getRemainingRequiredResourcesMessage() {
StringBuilder message = new StringBuilder();
- message.append("After evicting lower priority topologies: ");
NormalizedResourceOffer clusterRemainingAvailableResources = new NormalizedResourceOffer();
clusterRemainingAvailableResources.add(clusterAvailableResources);