Hi First of all, as David said, the reason why you get "Unexpected state handle type, expected: class org.apache.flink.runtime.state.KeyGroupsStateHandle, but found: class org.apache.flink.runtime.state.IncrementalRemoteKeyedStateHandle" is because of you use checkpoint written in RocksDB to resume your job with FsStateBackend. Have you ever changed your code or update configuration related to state.backend [1]?
Secondly, apart from getting the checkpoint path via web UI, a more accurate way is to list the folder hdfs://Desktop:9000/tmp/flinkck/df6d62a43620f258155b8538ef0ddf1b/ to see which chk-x folder containing file named _metadata [2], that's the folder you want to resume checkpoint. [1] https://ci.apache.org/projects/flink/flink-docs-stable/ops/config.html#state-backend [2] https://github.com/apache/flink/blob/713d02ef5cc5c668ecaef700257c893201080657/flink-runtime/src/main/java/org/apache/flink/runtime/state/filesystem/AbstractFsCheckpointStorage.java#L60 Best Yun Tang ________________________________ From: 大森林 <appleyu...@foxmail.com> Sent: Saturday, October 3, 2020 9:30 To: David Anderson <dander...@apache.org> Cc: user <user@flink.apache.org> Subject: 回复: need help about "incremental checkpoint",Thanks where's the actual path? I can only get one path from the WEB UI Is it possible that this error happened in step 5 is due to my code's fault? ------------------ 原始邮件 ------------------ 发件人: "大森林" <753743...@qq.com>; 发送时间: 2020年10月3日(星期六) 上午9:13 收件人: "David Anderson"<dander...@apache.org>; 抄送: "user"<user@flink.apache.org>; 主题: 回复: need help about "incremental checkpoint",Thanks Thanks~!! I have compared your command with mine in step 5. Mine is: "flink run -s hdfs://Desktop:9000/tmp/flinkck/df6d62a43620f258155b8538ef0ddf1b/chk-22 -c StateWordCount datastream_api-1.0-SNAPSHOT.jar" yours is: $ bin/flink run -s hdfs://Desktop:9000/tmp/flinkck/1de98c1611c134d915d19ded33aeab54/chk-3 <jar file> [args] They are the same. Could you tell me where am I wrong? ------------------------------------------------------------------------------------------------------------------------ Maybe the error is not caused by this command? "Unexpected state handle type, expected: class org.apache.flink.runtime.state.KeyGroupsStateHandle, but found: class org.apache.flink.runtime.state.IncrementalRemoteKeyedStateHandle" ---------------------------------------------------------------------------------------------------------------------------------- Thanks~ ------------------ 原始邮件 ------------------ 发件人: "David Anderson" <dander...@apache.org>; 发送时间: 2020年10月3日(星期六) 凌晨0:05 收件人: "大森林"<753743...@qq.com>; 抄送: "user"<user@flink.apache.org>; 主题: Re: need help about "incremental checkpoint",Thanks If hdfs://Desktop:9000/tmp/flinkck/1de98c1611c134d915d19ded33aeab54/chk-3 was written by the RocksDbStateBackend, then you can use it to recover if the new job is also using the RocksDbStateBackend. The command would be $ bin/flink run -s hdfs://Desktop:9000/tmp/flinkck/1de98c1611c134d915d19ded33aeab54/chk-3 <jar file> [args] The ":" character is meant to indicate that you should not use the literal string "checkpointMetaDataPath", but rather replace that with the actual path. Do not include the : character. David On Fri, Oct 2, 2020 at 5:58 PM 大森林 <753743...@qq.com<mailto:753743...@qq.com>> wrote: > > I have read the official document > https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/state/checkpoints.html#directory-structure > > at the end of above link,it said: > > $ bin/flink run -s :checkpointMetaDataPath [:runArgs] > > I have tried the above command in previous experiment,but still no luck. > And why the above official command has " :" after "run -s"? > I guess " :" not necessary. > > Could you tell me what the right command is to recover(resume) from > incremental checkpoint(RocksdbStateBackEnd)? > > Much Thanks~! > > > ------------------ 原始邮件 ------------------ > 发件人: "大森林" <appleyu...@foxmail.com<mailto:appleyu...@foxmail.com>>; > 发送时间: 2020年10月2日(星期五) 晚上11:41 > 收件人: "David Anderson"<dander...@apache.org<mailto:dander...@apache.org>>; > 抄送: "user"<user@flink.apache.org<mailto:user@flink.apache.org>>; > 主题: 回复: need help about "incremental checkpoint",Thanks > > Thanks for your replies~! > > Could you tell me what the right command is to recover from checkpoint > manually using Rocksdb file? > > I understand that checkpoint is for automatically recovery, > but in this experiment I stop it by force(input 4 error in nc -lk 9999), > Is there a way to recover from incremental checkpoint manually ( with > RocksdbStateBackend)? > > I can only find > hdfs://Desktop:9000/tmp/flinkck/1de98c1611c134d915d19ded33aeab54/chk-3 in my > WEB UI (I guess this is only used for fsStateBackend) > > Thanks for your help~! > > ------------------ 原始邮件 ------------------ > 发件人: "David Anderson" <dander...@apache.org<mailto:dander...@apache.org>>; > 发送时间: 2020年10月2日(星期五) 晚上11:24 > 收件人: "大森林"<appleyu...@foxmail.com<mailto:appleyu...@foxmail.com>>; > 抄送: "user"<user@flink.apache.org<mailto:user@flink.apache.org>>; > 主题: Re: need help about "incremental checkpoint",Thanks > >> Write in RocksDbStateBackend. >> Read in FsStateBackend. >> It's NOT a match. > > > Yes, that is right. Also, this does not work: > > Write in FsStateBackend > Read in RocksDbStateBackend > > For questions and support in Chinese, you can use the > user...@flink.apache.org<mailto:user...@flink.apache.org>. See the > instructions at https://flink.apache.org/zh/community.html for how to join > the list. > > Best, > David > > On Fri, Oct 2, 2020 at 4:45 PM 大森林 > <appleyu...@foxmail.com<mailto:appleyu...@foxmail.com>> wrote: >> >> Thanks for your replies~! >> >> My English is poor ,I have an understanding of your replies: >> >> Write in RocksDbStateBackend. >> Read in FsStateBackend. >> It's NOT a match. >> So I'm wrong in step 5? >> Is my above understanding right? >> >> Thanks for your help. >> >> ------------------ 原始邮件 ------------------ >> 发件人: "David Anderson" <dander...@apache.org<mailto:dander...@apache.org>>; >> 发送时间: 2020年10月2日(星期五) 晚上10:35 >> 收件人: "大森林"<appleyu...@foxmail.com<mailto:appleyu...@foxmail.com>>; >> 抄送: "user"<user@flink.apache.org<mailto:user@flink.apache.org>>; >> 主题: Re: need help about "incremental checkpoint",Thanks >> >> It looks like you were trying to resume from a checkpoint taken with the >> FsStateBackend into a revised version of the job that uses the >> RocksDbStateBackend. Switching state backends in this way is not supported: >> checkpoints and savepoints are written in a state-backend-specific format, >> and can only be read by the same backend that wrote them. >> >> It is possible, however, to migrate between state backends using the State >> Processor API [1]. >> >> [1] >> https://ci.apache.org/projects/flink/flink-docs-stable/dev/libs/state_processor_api.html >> >> Best, >> David >> >> On Fri, Oct 2, 2020 at 4:07 PM 大森林 >> <appleyu...@foxmail.com<mailto:appleyu...@foxmail.com>> wrote: >>> >>> I want to do an experiment of"incremental checkpoint" >>> >>> my code is: >>> >>> https://paste.ubuntu.com/p/DpTyQKq6Vk/ >>> >>> >>> >>> pom.xml is: >>> >>> <?xml version="1.0" encoding="UTF-8"?> >>> <project xmlns="http://maven.apache.org/POM/4.0.0" >>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >>> http://maven.apache.org/xsd/maven-4.0.0.xsd"> >>> <modelVersion>4.0.0</modelVersion> >>> >>> <groupId>example</groupId> >>> <artifactId>datastream_api</artifactId> >>> <version>1.0-SNAPSHOT</version> >>> <build> >>> <plugins> >>> <plugin> >>> <groupId>org.apache.maven.plugins</groupId> >>> <artifactId>maven-compiler-plugin</artifactId> >>> <version>3.1</version> >>> <configuration> >>> <source>1.8</source> >>> <target>1.8</target> >>> </configuration> >>> </plugin> >>> >>> <plugin> >>> <groupId>org.scala-tools</groupId> >>> <artifactId>maven-scala-plugin</artifactId> >>> <version>2.15.2</version> >>> <executions> >>> <execution> >>> <goals> >>> <goal>compile</goal> >>> <goal>testCompile</goal> >>> </goals> >>> </execution> >>> </executions> >>> </plugin> >>> >>> >>> >>> </plugins> >>> </build> >>> >>> <dependencies> >>> >>> <!-- >>> https://mvnrepository.com/artifact/org.apache.flink/flink-streaming-scala >>> --> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-streaming-scala_2.11</artifactId> >>> <version>1.11.1</version> >>> <!-<scope>provided</scope>-> >>> </dependency> >>> >>> <!-<dependency>-> >>> <!-<groupId>org.apache.flink</groupId>-> >>> <!-<artifactId>flink-streaming-java_2.12</artifactId>-> >>> <!-<version>1.11.1</version>-> >>> <!-<!�C<scope>compile</scope>�C>-> >>> <!-</dependency>-> >>> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-clients_2.11</artifactId> >>> <version>1.11.1</version> >>> </dependency> >>> >>> >>> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-statebackend-rocksdb_2.11</artifactId> >>> <version>1.11.2</version> >>> <!-<scope>test</scope>-> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.hadoop</groupId> >>> <artifactId>hadoop-client</artifactId> >>> <version>3.3.0</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-core</artifactId> >>> <version>1.11.1</version> >>> </dependency> >>> >>> <!-<dependency>-> >>> <!-<groupId>org.slf4j</groupId>-> >>> <!-<artifactId>slf4j-simple</artifactId>-> >>> <!-<version>1.7.25</version>-> >>> <!-<scope>compile</scope>-> >>> <!-</dependency>-> >>> >>> <!-- https://mvnrepository.com/artifact/org.apache.flink/flink-cep --> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-cep_2.11</artifactId> >>> <version>1.11.1</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-cep-scala_2.11</artifactId> >>> <version>1.11.1</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.flink</groupId> >>> <artifactId>flink-scala_2.11</artifactId> >>> <version>1.11.1</version> >>> </dependency> >>> >>> >>> >>> <dependency> >>> <groupId>org.projectlombok</groupId> >>> <artifactId>lombok</artifactId> >>> <version>1.18.4</version> >>> <!-<scope>provided</scope>-> >>> </dependency> >>> >>> </dependencies> >>> </project> >>> >>> >>> >>> the error I got is: >>> >>> https://paste.ubuntu.com/p/49HRYXFzR2/ >>> >>> >>> >>> some of the above error is: >>> >>> Caused by: java.lang.IllegalStateException: Unexpected state handle type, >>> expected: class org.apache.flink.runtime.state.KeyGroupsStateHandle, but >>> found: class >>> org.apache.flink.runtime.state.IncrementalRemoteKeyedStateHandle >>> >>> >>> >>> >>> >>> The steps are: >>> >>> 1.mvn clean scala:compile compile package >>> >>> 2.nc<http://2.nc> -lk 9999 >>> >>> 3.flink run -c wordcount_increstate datastream_api-1.0-SNAPSHOT.jar >>> Job has been submitted with JobID df6d62a43620f258155b8538ef0ddf1b >>> >>> 4.input the following conents in nc -lk 9999 >>> >>> before >>> error >>> error >>> error >>> error >>> >>> 5. >>> >>> flink run -s >>> hdfs://Desktop:9000/tmp/flinkck/df6d62a43620f258155b8538ef0ddf1b/chk-22 -c >>> StateWordCount datastream_api-1.0-SNAPSHOT.jar >>> >>> Then the above error happens. >>> >>> >>> >>> Please help,Thanks~! >>> >>> >>> I have tried to subscried to >>> user@flink.apache.org<mailto:user@flink.apache.org>; >>> >>> but no replies.If possible ,send to >>> appleyu...@foxmail.com<mailto:appleyu...@foxmail.com> with your valuable >>> replies,thanks. >>> >>>