Dennis-Mircea Ciupitu created FLINK-39554:
---------------------------------------------

             Summary: Support multiple custom autoscaler evaluators with 
deterministic ordering
                 Key: FLINK-39554
                 URL: https://issues.apache.org/jira/browse/FLINK-39554
             Project: Flink
          Issue Type: Improvement
          Components: Autoscaler, Kubernetes Operator
    Affects Versions: kubernetes-operator-1.15.0
            Reporter: Dennis-Mircea Ciupitu


h1. Summary

Allow more than one {{FlinkAutoscalerEvaluator}} plugin to be active for a 
single job, and define a deterministic, configurable ordering contract for how 
their metric overrides are composed.
h1. Motivation

FLINK-39511 introduced the {{FlinkAutoscalerEvaluator}} plugin SPI, aligned the 
configuration shape with reporter-style idiom 
({{{}job.autoscaler.metrics.custom-evaluators{}}} + per-instance 
{{<name>.class}} + {{{}<name>.<parameter>{}}}), and intentionally limited the 
runtime to a single custom evaluator per job:
 * {{job.autoscaler.metrics.custom-evaluators}} is parsed as a list.
 * If more than one entry is configured, the autoscaler logs a warning and 
silently falls back to the first entry, ignoring the rest.

This was a deliberate scope cut to keep the initial PR small and to defer the 
ordering / composition contract to a follow-up.

h1. Goal

Lift the "first-wins" cap and make the registered list of evaluators a true 
ordered chain whose composition behaviour is well-defined, predictable, and 
aligned with 
[FLIP-575|https://cwiki.apache.org/confluence/display/FLINK/FLIP-575%3A+Scaling+Executor+Plugin+SPI+for+Flink+Autoscaler]
 ({{ScalingExecutorPlugin}}) priority semantics for consistency across the 
autoscaler plugin SPIs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to