关于flink 提交job参数不生效的问题

classic Classic list List threaded Threaded
33 messages Options
12
Reply | Threaded
Open this post in threaded view
|

回复:flink1.9,state process api 读取MapState,出错

shao.hongxiao
是不是静态内部类的问题?
Rules for POJO types

Flink recognizes a data type as a POJO type (and allows “by-name” field referencing) if the following conditions are fulfilled:

The class is public and standalone (no non-static inner class)
The class has a public no-argument constructor
All non-static, non-transient fields in the class (and all superclasses) are either public (and non-final) or have a public getter- and a setter- method that follows the Java beans naming conventions for getters and setters.

Note that when a user-defined data type can’t be recognized as a POJO type, it must be processed as GenericType and serialized with Kryo.



| |
邵红晓
|
|
邮箱:[hidden email]
|
签名由网易邮箱大师定制
在2020年4月30日 09:40,shx<[hidden email]> 写道:
能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢




| |
邵红晓
|
|
邮箱:[hidden email]
|

签名由 网易邮箱大师 定制

在2020年04月30日 09:04,guanyq 写道:
代码中没特别指定Serializer。都是默认的序列化。
在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
Hi
从错误日志看,是 StateMigration 相关的问题。
你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
是一样的或者是兼容的,你可以参考下这个文档[1]

[1]
https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html

Best,
Congxian


guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:


附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。
Reply | Threaded
Open this post in threaded view
|

Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
我把静态类替换成List<String>也还报同样错误
附件是代码







在 2020-04-30 10:32:26,"shao.hongxiao" <[hidden email]> 写道: >是不是静态内部类的问题? >Rules for POJO types > >Flink recognizes a data type as a POJO type (and allows “by-name” field referencing) if the following conditions are fulfilled: > >The class is public and standalone (no non-static inner class) >The class has a public no-argument constructor >All non-static, non-transient fields in the class (and all superclasses) are either public (and non-final) or have a public getter- and a setter- method that follows the Java beans naming conventions for getters and setters. > >Note that when a user-defined data type can’t be recognized as a POJO type, it must be processed as GenericType and serialized with Kryo. > > > >| | >邵红晓 >| >| >邮箱:[hidden email] >| >签名由网易邮箱大师定制 >在2020年4月30日 09:40,shx<[hidden email]> 写道: >能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢 > > > > >| | >邵红晓 >| >| >邮箱:[hidden email] >| > >签名由 网易邮箱大师 定制 > >在2020年04月30日 09:04,guanyq 写道: >代码中没特别指定Serializer。都是默认的序列化。 >在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道: >Hi >从错误日志看,是 StateMigration 相关的问题。 >你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer >是一样的或者是兼容的,你可以参考下这个文档[1] > >[1] >https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html > >Best, >Congxian > > >guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道: > > >附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。


 


ReadListState.java (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re:Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
In reply to this post by guanyq
还有其他可能的原因么。
















在 2020-04-30 10:25:32,"guanyq" <[hidden email]> 写道:







附件是代码
还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗
-- 代码是读出所有map状态的key。













在 2020-04-30 09:40:45,"shx" <[hidden email]> 写道:

>能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢
>
>
>
>
>| |
>邵红晓
>|
>|
>邮箱:[hidden email]
>|
>
>签名由 网易邮箱大师 定制
>
>在2020年04月30日 09:04,guanyq 写道:
>代码中没特别指定Serializer。都是默认的序列化。
>在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
>>Hi
>>从错误日志看,是 StateMigration 相关的问题。
>>你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
>>是一样的或者是兼容的,你可以参考下这个文档[1]
>>
>>[1]
>>https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html
>>
>>Best,
>>Congxian
>>
>>
>>guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:
>>
>>>
>>> 附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。





 
Reply | Threaded
Open this post in threaded view
|

Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
In reply to this post by shao.hongxiao
有没有发现,我这还是报错。

















在 2020-04-30 09:40:45,"shx" <[hidden email]> 写道:

>能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢
>
>
>
>
>| |
>邵红晓
>|
>|
>邮箱:[hidden email]
>|
>
>签名由 网易邮箱大师 定制
>
>在2020年04月30日 09:04,guanyq 写道:
>代码中没特别指定Serializer。都是默认的序列化。
>在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
>>Hi
>>从错误日志看,是 StateMigration 相关的问题。
>>你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
>>是一样的或者是兼容的,你可以参考下这个文档[1]
>>
>>[1]
>>https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html
>>
>>Best,
>>Congxian
>>
>>
>>guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:
>>
>>>
>>> 附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。
Reply | Threaded
Open this post in threaded view
|

回复:flink1.9,state process api 读取MapState,出错

shao.hongxiao


用一个正常的Java pojo试一下
| |
邵红晓
|
|
邮箱:[hidden email]
|
签名由网易邮箱大师定制
在2020年4月30日 15:14,guanyq<[hidden email]> 写道:
有没有发现,我这还是报错。

















在 2020-04-30 09:40:45,"shx" <[hidden email]> 写道:
能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢




| |
邵红晓
|
|
邮箱:[hidden email]
|

签名由 网易邮箱大师 定制

在2020年04月30日 09:04,guanyq 写道:
代码中没特别指定Serializer。都是默认的序列化。
在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
Hi
从错误日志看,是 StateMigration 相关的问题。
你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
是一样的或者是兼容的,你可以参考下这个文档[1]

[1]
https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html

Best,
Congxian


guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:


附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。
Reply | Threaded
Open this post in threaded view
|

Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
public class MyKeyedMapState {<br/>    public String key;<br/>    public List&lt;String&gt; value;<br/><br/>    public MyKeyedMapState() {<br/>    }<br/><br/>    public String getKey() {<br/>        return key;<br/>    }<br/><br/>    public void setKey(String key) {<br/>        this.key = key;<br/>    }<br/><br/>    public List&lt;String&gt; getValue() {<br/>        return value;<br/>    }<br/><br/>    public void setValue(List&lt;String&gt; value) {<br/>        this.value = value;<br/>    }<br/>}<br/><br/>改成这个也还是报同样的错误!
在 2020-04-30 15:19:18,"shao.hongxiao" <[hidden email]> 写道:

>
>
>用一个正常的Java pojo试一下
>| |
>邵红晓
>|
>|
>邮箱:[hidden email]
>|
>签名由网易邮箱大师定制
>在2020年4月30日 15:14,guanyq<[hidden email]> 写道:
>有没有发现,我这还是报错。
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>在 2020-04-30 09:40:45,"shx" <[hidden email]> 写道:
>能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢
>
>
>
>
>| |
>邵红晓
>|
>|
>邮箱:[hidden email]
>|
>
>签名由 网易邮箱大师 定制
>
>在2020年04月30日 09:04,guanyq 写道:
>代码中没特别指定Serializer。都是默认的序列化。
>在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
>Hi
>从错误日志看,是 StateMigration 相关的问题。
>你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
>是一样的或者是兼容的,你可以参考下这个文档[1]
>
>[1]
>https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html
>
>Best,
>Congxian
>
>
>guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:
>
>
>附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。
Reply | Threaded
Open this post in threaded view
|

Re:Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
我自己又实现了一个MapState的存储job,用同样的代码是可以读取出所有MapState的key的。
在 2020-04-30 15:23:39,"guanyq" <[hidden email]> 写道:

>public class MyKeyedMapState {<br/>    public String key;<br/>    public List&lt;String&gt; value;<br/><br/>    public MyKeyedMapState() {<br/>    }<br/><br/>    public String getKey() {<br/>        return key;<br/>    }<br/><br/>    public void setKey(String key) {<br/>        this.key = key;<br/>    }<br/><br/>    public List&lt;String&gt; getValue() {<br/>        return value;<br/>    }<br/><br/>    public void setValue(List&lt;String&gt; value) {<br/>        this.value = value;<br/>    }<br/>}<br/><br/>改成这个也还是报同样的错误!
>在 2020-04-30 15:19:18,"shao.hongxiao" <[hidden email]> 写道:
>>
>>
>>用一个正常的Java pojo试一下
>>| |
>>邵红晓
>>|
>>|
>>邮箱:[hidden email]
>>|
>>签名由网易邮箱大师定制
>>在2020年4月30日 15:14,guanyq<[hidden email]> 写道:
>>有没有发现,我这还是报错。
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>在 2020-04-30 09:40:45,"shx" <[hidden email]> 写道:
>>能发一下写入状态的代码看一下吗,还有一个问题,键值状态访问,你的代码里是读出了所有key关键的mapstate吗,谢谢
>>
>>
>>
>>
>>| |
>>邵红晓
>>|
>>|
>>邮箱:[hidden email]
>>|
>>
>>签名由 网易邮箱大师 定制
>>
>>在2020年04月30日 09:04,guanyq 写道:
>>代码中没特别指定Serializer。都是默认的序列化。
>>在 2020-04-29 18:20:22,"Congxian Qiu" <[hidden email]> 写道:
>>Hi
>>从错误日志看,是 StateMigration 相关的问题。
>>你需要确认下,你的代码中的 Serializer 和 savepoint 中 state 相关的 serializer
>>是一样的或者是兼容的,你可以参考下这个文档[1]
>>
>>[1]
>>https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/schema_evolution.html
>>
>>Best,
>>Congxian
>>
>>
>>guanyq <[hidden email]> 于2020年4月29日周三 下午6:09写道:
>>
>>
>>附件是代码和错误日志。目前不知道如何调查。麻烦帮忙看下 谢谢。
Reply | Threaded
Open this post in threaded view
|

Re:Re:Re:回复:flink1.9,state process api 读取MapState,出错

guanyq
定位到问题点了。
和这个keyBy有关,后一种可以读取MapState,前一种报错


 

Reply | Threaded
Open this post in threaded view
|

Re: Re:Re:回复:flink1.9,state process api 读取MapState,出错

Congxian Qiu
你好,你最后一条消息的图挂了,可以尝试用文字把整个问题的原因,以及解决方案描述一下发到邮件列表中,可以帮助后来人。后续有人遇到类似的问题,能够搜索到相关的解决方案。
Best,
Congxian


guanyq <[hidden email]> 于2020年4月30日周四 下午4:13写道:

> 定位到问题点了。
> 和这个keyBy有关,后一种可以读取MapState,前一种报错
>
>
>
>
Reply | Threaded
Open this post in threaded view
|

flink1.9,FSstatebackend,checkpoint相关问题

guanyq
In reply to this post by guanyq
附件为日志,麻烦帮忙分析一下。



 


error.log (111K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

flink1.9,FSstatebackend,checkpoint失败

guanyq
flink版本:1.9
stateBackEnd:FsStateBackEnd
附件:
checkpoint失败截图及日志,应该如何分析解决这种失败?




 


error.log (111K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re:flink1.9,FSstatebackend,checkpoint失败

guanyq
flink版本:1.9
stateBackEnd:FsStateBackEnd
附件:
checkpoint失败截图及日志,应该如何分析解决这种失败?


 


error.log (111K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: flink1.9,FSstatebackend,checkpoint失败

Congxian Qiu
Hi
从你给的日志看,错误原因是“No lease on
/flink/checkpoints/OnlineOrderAddressMatch/8183afb213bfbd32b49e3a6bab977f7c/chk-25/d993f40c-a8a1-4582-ad7b-ac47a2b163a0
(inode 25791993): File does not exist. Holder
DFSClient_NONMAPREDUCE_1212990289_95 does not have any open files.”
也就是文件不存在了,你需要看看为什么文件不存在了,或许你可以从 audit log 中找到一些信息

Best,
Congxian


guanyq <[hidden email]> 于2020年5月11日周一 上午8:25写道:

> flink版本:1.9
> stateBackEnd:FsStateBackEnd
> 附件:
> checkpoint失败截图及日志,应该如何分析解决这种失败?
>
>
>
>
12