gianm commented on code in PR #19369:
URL: https://github.com/apache/druid/pull/19369#discussion_r3265121687
##########
server/src/main/java/org/apache/druid/indexing/overlord/supervisor/autoscaler/SupervisorTaskAutoScaler.java:
##########
@@ -19,17 +19,31 @@
package org.apache.druid.indexing.overlord.supervisor.autoscaler;
+/**
+ * Task-count auto-scaler driven by a streaming supervisor.
+ * <p>
+ * Scaler return-value contract for {@link #computeTaskCountForRollover()} and
any
+ * implementation-specific scale-action method:
+ * <ul>
+ * <li>{@code -1} — error case: metrics unavailable or an answer cannot be
computed. The
+ * supervisor will skip scaling and emit a failure metric.</li>
+ * <li>Otherwise — the scaler's preferred task count, <i>unclamped</i> by
configured min/max
Review Comment:
I figure that "go idle" is something that the main supervisor decides, not
the autoscaler. I suppose it could be moved to the autoscaler, in which case
allowing it to scale to zero tasks would make sense. OTOH it being the
supervisor's responsibility is kind of nice, because it means each autoscaler
doesn't have to implement idleness detection on its own.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]