Hi Sachin, JobGraph is not meant to be compatible between Flink releases. To upgrade, please go through the regular process using Savepoints [1].
Best, D. [1] https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/ops/state/savepoints/ On Wed, Sep 18, 2024 at 5:30 AM Sachin Sharma <sachinapr...@gmail.com> wrote: > Hi, > > We are running flink applications on Flink versions 1.15.4 and now we want > to migrate them to 1.19.1 version. When I am trying to start the > application on a newer version, Flink is complaining about an internal > change in the data structure of JobVertex. getting below error: > > JobVertex > > *1.19.1:* > private final Map<IntermediateDataSetID, IntermediateDataSet> results = > new LinkedHashMap<>(); > > *1.15.4:* > private final ArrayList<IntermediateDataSet> results = new ArrayList<>(); > > java.lang.ClassCastException: cannot assign instance of >> java.util.ArrayList to field >> org.apache.flink.runtime.jobgraph.JobVertex.results of type java.util.Map >> in instance of org.apache.flink.runtime.jobgraph.JobVertex\n\tat >> java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(Unknown >> Source)\n\tat >> java.io.ObjectStreamClass$FieldReflector.checkObjectFieldValueTypes(Unknown >> Source)\n\tat java.io.ObjectStreamClass.checkObjFieldValueTypes(Unknown >> Source)\n\tat java.io.ObjectInputStream.defaultCheckFieldValues(Unknown >> Source)\n\tat java.io.ObjectInputStream.readSerialData(Unknown >> Source)\n\t... 23 frames truncated\n\t... 10 common frames omitted\nWrapped >> by: org.apache.flink.util.FlinkRuntimeException: Could not recover job with >> job id 00000000000000000000000000000000.\n\tat >> org.apache.flink.runtime.dispatcher.runner.SessionDispatcherLeaderProcess.tryRecoverJob(SessionDispatcherLeaderProcess.java:183)\n\tat >> org.apache.flink.runtime.dispatcher.runner.SessionDispatcherLeaderProcess.recoverJobs(SessionDispatcherLeaderProcess.java:150)\n\tat >> org.apache.flink.runtime.dispatcher.runner.SessionDispatcherLeaderProcess.lambda$recoverJobsIfRunning$2(SessionDispatcherLeaderProcess.java:139)\n\tat >> org.apache.flink.runtime.dispatcher.runner.AbstractDispatcherLeaderProcess.supplyUnsynchronizedIfRunning(AbstractDispatcherLeaderProcess.java:198)\n\tat >> org.apache.flink.runtime.dispatcher.runner.SessionDispatcherLeaderProcess.recoverJobsIfRunning(SessionDispatcherLeaderProcess.java:139)\n\t... >> 1 frames truncated\n\t... 5 common frames omitted\nWrapped by: >> java.util.concurrent.CompletionException: >> org.apache.flink.util.FlinkRuntimeException: Could not recover job with job >> id 00000000000000000000000000000000.\n\tat >> java.util.concurrent.CompletableFuture.encodeThrowable(Unknown >> Source)\n\tat >> java.util.concurrent.CompletableFuture.completeThrowable(Unknown >> Source)\n\tat >> java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown >> Source)\n\tat java.util.concurrent.CompletableFuture$Completion.run(Unknown >> Source)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >> Source)\n\t... 2 frames truncated >> > > What should I do to make it compatible? > > Thanks & Regards, > Sachin Sharma > +1-669-278-5239 > > >