Re: Flink 从checkpoint恢复时,部分状态没有正确恢复

2021-08-30 文章 Benchao Li
这个问题已经在1.12中修复了,参考: https://issues.apache.org/jira/browse/FLINK-18688 Benchao Li 于2021年8月30日周一 下午7:49写道: > Hi xingxing, > > 看起来你可能也遇到了这个bug了。 > 我们遇到过一个bug是这样的,在group by的多个字段里面,如果有2个及以上变长字段的话,会导致底层的BinaryRow序列化 > 的结果不稳定,进而导致状态恢复会错误。 > 先解释下变长字段,这个指的是4byte存不下的数据类型,比如典型的varchar、list、map、row等等; >

Re: Flink 从checkpoint恢复时,部分状态没有正确恢复

2021-08-30 文章 Benchao Li
Hi xingxing, 看起来你可能也遇到了这个bug了。 我们遇到过一个bug是这样的,在group by的多个字段里面,如果有2个及以上变长字段的话,会导致底层的BinaryRow序列化 的结果不稳定,进而导致状态恢复会错误。 先解释下变长字段,这个指的是4byte存不下的数据类型,比如典型的varchar、list、map、row等等; 然后再解释下这个结果不稳定的原因,这个是因为在底层的代码生成里面有一个优化,会按照类型进行分组,然后进行优化, 但是这个分组的过程用的是一个HashMap[1],会导致字段顺序不是确定性的,有时候是这个顺序,有时候又是另外一个顺序,

Flink 从checkpoint恢复时,部分状态没有正确恢复

2021-08-25 文章 dixingxing
Hi Flink 社区: 我们的Flink版本是1.9.2,用的是blink planer,我们今天遇到一个问题,目前没有定位到原因,现象如下: 手动重启任务时,指定了从一个固定的checkpoint恢复时,有一定的概率,一部分状态数据无法正常恢复,启动后Flink任务本身可以正常运行,且日志中没有明显的报错信息。 具体现象是:type=realshow的数据没有从状态恢复,也就是从0开始累加,而type=show和type=click的数据是正常从状态恢复的。 SQL大致如下: createview view1 as select event_id, act_time,