FrankChen021 commented on code in PR #19014:
URL: https://github.com/apache/druid/pull/19014#discussion_r3141586395
##########
extensions-core/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/execution/KubernetesTaskExecutionConfigResource.java:
##########
@@ -84,12 +86,9 @@ public Response setExecutionConfig(
@Context final HttpServletRequest req
)
{
- KubernetesTaskRunnerDynamicConfig currentConfig = getDynamicConfig();
- KubernetesTaskRunnerDynamicConfig mergedConfig = dynamicConfig;
+ KubernetesTaskRunnerDynamicConfig currentConfig =
getCurrentConfiguration();
+ KubernetesTaskRunnerDynamicConfig mergedConfig =
currentConfig.merge(dynamicConfig);
Review Comment:
P2 POST persists static fallback values as dynamic overrides
Merging the request into getCurrentConfiguration() means the value saved to
metadata is the effective config, not just the dynamic override. For example,
with no dynamic config and a static druid.indexer.runner.capacity of 10, a POST
that only changes podTemplateSelectStrategy will persist capacity=10 as dynamic
config. If the operator later changes the static capacity to 20 and restarts,
the persisted dynamic capacity still wins, so the task runner unexpectedly
stays capped at 10. The POST path should merge against the persisted dynamic
config, or otherwise avoid writing static fallback values into dynamic config.
--
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]