[ 
https://issues.apache.org/jira/browse/FLINK-40365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18103647#comment-18103647
 ] 

Dale Lane commented on FLINK-40365:
-----------------------------------

offered a suggested fix at 
https://github.com/apache/flink-kubernetes-operator/pull/1173 

> Job Management docs: "Config Requirement" for savepoint upgrade mode is 
> incorrect
> ---------------------------------------------------------------------------------
>
>                 Key: FLINK-40365
>                 URL: https://issues.apache.org/jira/browse/FLINK-40365
>             Project: Flink
>          Issue Type: Bug
>          Components: Documentation, Kubernetes Operator
>            Reporter: Dale Lane
>            Priority: Minor
>
> The "Stateful and stateless application upgrades" table in 
> {{job-management.md}} 
> [ref|https://github.com/apache/flink-kubernetes-operator/blob/main/docs/content/docs/managing/job-management.md#L103-L109]
>  states, for the `savepoint` upgrade mode's "Config Requirement" row:
> {{Checkpoint or savepoint directory defined}}
> This reads as "either directory is sufficient." But 
> {{DefaultValidator.validateJobSpec}} 
> ([ref|https://github.com/apache/flink-kubernetes-operator/blob/main/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/DefaultValidator.java#L251-L272])
>  requires both directories for {{savepoint}} mode:
>  - {{checkpoints.dir}} is required for any non-stateless mode, including 
> savepoint — this is what backs the savepoint -> last-state fallback described 
> in the footnote just below the table, for when the job is unhealthy at 
> upgrade time - {{AbstractJobReconciler.getJobUpgrade}} 
> ([ref|https://github.com/apache/flink-kubernetes-operator/blob/main/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/reconciler/deployment/AbstractJobReconciler.java#L240-L259])
>  - {{savepoints.dir}} is additionally required specifically for savepoint 
> mode, to actually take and restore the savepoint.
> A deployment configured with only {{state.savepoints.dir}} (no 
> {{state.checkpoints.dir}}) will pass what the docs imply is sufficient, but 
> fail admission validation with "Checkpoint directory[...] must be defined for 
> last-state and savepoint upgrade modes"
> *Suggested fix:* change the table cell to {{Checkpoint and savepoint 
> directory defined}}
> We could also extend the existing footnote (or add one) to note that the 
> checkpoint directory requirement for savepoint mode exists specifically to 
> support the fallback to last-state when the job isn't healthy at upgrade time.



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

Reply via email to