You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Gyula Fora (Jira)" <ji...@apache.org> on 2025/03/16 18:27:00 UTC
[jira] [Commented] (FLINK-37370) [Observer] Finished batch jobs throw ReconciliationException and never reach FINISHED in the CR
[ https://issues.apache.org/jira/browse/FLINK-37370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17936047#comment-17936047 ]
Gyula Fora commented on FLINK-37370:
------------------------------------
merged to main:
c4d460bb4fd3b67b4a23a840a87f811ea5463b70
> [Observer] Finished batch jobs throw ReconciliationException and never reach FINISHED in the CR
> -----------------------------------------------------------------------------------------------
>
> Key: FLINK-37370
> URL: https://issues.apache.org/jira/browse/FLINK-37370
> Project: Flink
> Issue Type: Bug
> Components: Kubernetes Operator
> Affects Versions: kubernetes-operator-1.10.0
> Environment: I've attached the flinkdeployment CR I used to locally replicate.
> Reporter: Luca Castelli
> Assignee: Luca Castelli
> Priority: Minor
> Labels: pull-request-available
> Fix For: kubernetes-operator-1.12.0
>
> Attachments: operator-log-batch-job.log, test-batch-job.yaml
>
>
> The root error (full logs attached):
>
> {code:java}
> Caused by: org.apache.flink.runtime.rest.util.RestClientException: [org.apache.flink.runtime.rest.handler.RestHandlerException: Checkpointing has not been enabled.
> at org.apache.flink.runtime.rest.handler.job.checkpoints.CheckpointingStatisticsHandler.createCheckpointingStatistics(CheckpointingStatisticsHandler.java:107)
> {code}
> # The job finishes successfully and the job status changes to FINISHED in memory
> # In the observation loop, in [AbstractFlinkService.getCheckpointInfo|https://github.com/apache/flink-kubernetes-operator/blob/main/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/service/AbstractFlinkService.java#L570], the operator successfully connects to the Flink REST API
> # It tries to get checkpoint statistics via CheckpointingStatisticsHandler, but the handler throws an error because checkpointing is not enabled. This is an expected response since it's a batch job
> E.g. [http://localhost:8081/jobs/job-id/checkpoints]
> {code:java}
> { "errors": [ "org.apache.flink.runtime.rest.handler.RestHandlerException: Checkpointing has not been enabled.\n\tat org.apache.flink.runtime.rest.handler.job.checkpoints.CheckpointingStatisticsHandler.createCheckpointingStatistics(CheckpointingStatisticsHandler.java:107)\n\tat org.apache.flink.runtime.rest.handler.job.checkpoints.CheckpointingStatisticsHandler.handleCheckpointStatsRequest(CheckpointingStatisticsHandler.java:85)\n\tat org.apache.flink.runtime.rest.handler.job.checkpoints.CheckpointingStatisticsHandler.handleCheckpointStatsRequest(CheckpointingStatisticsHandler.java:59)\n\tat org.apache.flink.runtime.rest.handler.job.checkpoints.AbstractCheckpointStatsHandler.lambda$handleRequest$1(AbstractCheckpointStatsHandler.java:89)\n\tat java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:642)\n\tat java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base/java.lang.Thread.run(Thread.java:829)\n" ] }{code}
> 4. The REST endpoint exists but returns the exception which then bubbles up to
> {code:java}
> org.apache.flink.kubernetes.operator.exception.ReconciliationException: Could not observe latest savepoint information{code}
> in the operator and continues being thrown in a loop
> 5. The deployment is never cleaned up and never reaches a FINISHED JOB STATUS in the CR
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)