You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by lxk <lx...@163.com> on 2023/02/14 06:31:48 UTC

Flink程序内存Dump不了

Flink version:1.16
java version: jdk1.8.0_251
问题:最近上线的Flink程序,频繁young gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format b,file=user.dump 26326 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。

Re:Re: Re: Flink程序内存Dump不了

Posted by lxk <lx...@163.com>.
非常感谢,切换账户之后,有些job是能dump下来,但是有些job还是会报相同的错误,并且已经确认过flink作业的user和运行linux命令的user是一致的。

















在 2023-02-21 11:26:07,"Biao Geng" <bi...@gmail.com> 写道:
>Hi,
>这个报错 sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
>可能和flink关系不大。
>我们之前在生产环境中dump内存的时候遇到过类似问题,后续定位发现是运行jmap命令的Linux user与运行flink作业的Linux
>user不一致导致的。
>不知道和你们的问题一不一致,你可以试试t用op -p <PID>查到USER,然后su <USER>一下,再进行jmap
>-dump:format=b,file=/tmp/dump.hprof <PID>试试。
>
>Best,
>Biao Geng
>
>Weihua Hu <hu...@gmail.com> 于2023年2月20日周一 14:03写道:
>
>> Hi,
>>
>> 可以把心跳超时(heartbeat.timeout)[1]也调大再尝试 dump 内存。
>>
>>
>> [1]
>>
>> https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/#advanced-fault-tolerance-options
>>
>> Best,
>> Weihua
>>
>>
>> On Mon, Feb 20, 2023 at 1:58 PM lxk <lx...@163.com> wrote:
>>
>> > 我尝试调整了参数,具体数值如下
>> >
>> >
>> > akka.ask.timeout: 900s
>> >
>> >
>> >
>> > 但还是报同样的错
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > 在 2023-02-17 17:32:51,"Guo Thompson" <gw...@gmail.com> 写道:
>> > >可能是jm 和 tm之间的心跳时间太短了, dump的过程会stop the world,tm就不响应jm的heartbeat了;
>> > >
>> > >lxk <lx...@163.com> 于2023年2月14日周二 14:32写道:
>> > >
>> > >> Flink version:1.16
>> > >> java version: jdk1.8.0_251
>> > >> 问题:最近上线的Flink程序,频繁young
>> > >>
>> >
>> gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps
>> > >> -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format
>> > >> b,file=user.dump 26326
>> > >>
>> >
>> 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
>> > >> sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
>> > >> https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
>> > >> 不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。
>> >
>>

Re: Re: Flink程序内存Dump不了

Posted by Biao Geng <bi...@gmail.com>.
Hi,
这个报错 sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
可能和flink关系不大。
我们之前在生产环境中dump内存的时候遇到过类似问题,后续定位发现是运行jmap命令的Linux user与运行flink作业的Linux
user不一致导致的。
不知道和你们的问题一不一致,你可以试试t用op -p <PID>查到USER,然后su <USER>一下,再进行jmap
-dump:format=b,file=/tmp/dump.hprof <PID>试试。

Best,
Biao Geng

Weihua Hu <hu...@gmail.com> 于2023年2月20日周一 14:03写道:

> Hi,
>
> 可以把心跳超时(heartbeat.timeout)[1]也调大再尝试 dump 内存。
>
>
> [1]
>
> https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/#advanced-fault-tolerance-options
>
> Best,
> Weihua
>
>
> On Mon, Feb 20, 2023 at 1:58 PM lxk <lx...@163.com> wrote:
>
> > 我尝试调整了参数,具体数值如下
> >
> >
> > akka.ask.timeout: 900s
> >
> >
> >
> > 但还是报同样的错
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > 在 2023-02-17 17:32:51,"Guo Thompson" <gw...@gmail.com> 写道:
> > >可能是jm 和 tm之间的心跳时间太短了, dump的过程会stop the world,tm就不响应jm的heartbeat了;
> > >
> > >lxk <lx...@163.com> 于2023年2月14日周二 14:32写道:
> > >
> > >> Flink version:1.16
> > >> java version: jdk1.8.0_251
> > >> 问题:最近上线的Flink程序,频繁young
> > >>
> >
> gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps
> > >> -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format
> > >> b,file=user.dump 26326
> > >>
> >
> 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
> > >> sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
> > >> https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
> > >> 不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。
> >
>

Re: Re: Flink程序内存Dump不了

Posted by Weihua Hu <hu...@gmail.com>.
Hi,

可以把心跳超时(heartbeat.timeout)[1]也调大再尝试 dump 内存。


[1]
https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/#advanced-fault-tolerance-options

Best,
Weihua


On Mon, Feb 20, 2023 at 1:58 PM lxk <lx...@163.com> wrote:

> 我尝试调整了参数,具体数值如下
>
>
> akka.ask.timeout: 900s
>
>
>
> 但还是报同样的错
>
>
>
>
>
>
>
>
>
>
>
> 在 2023-02-17 17:32:51,"Guo Thompson" <gw...@gmail.com> 写道:
> >可能是jm 和 tm之间的心跳时间太短了, dump的过程会stop the world,tm就不响应jm的heartbeat了;
> >
> >lxk <lx...@163.com> 于2023年2月14日周二 14:32写道:
> >
> >> Flink version:1.16
> >> java version: jdk1.8.0_251
> >> 问题:最近上线的Flink程序,频繁young
> >>
> gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps
> >> -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format
> >> b,file=user.dump 26326
> >>
> 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
> >> sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
> >> https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
> >> 不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。
>

Re:Re: Flink程序内存Dump不了

Posted by lxk <lx...@163.com>.
我尝试调整了参数,具体数值如下


akka.ask.timeout: 900s



但还是报同样的错











在 2023-02-17 17:32:51,"Guo Thompson" <gw...@gmail.com> 写道:
>可能是jm 和 tm之间的心跳时间太短了, dump的过程会stop the world,tm就不响应jm的heartbeat了;
>
>lxk <lx...@163.com> 于2023年2月14日周二 14:32写道:
>
>> Flink version:1.16
>> java version: jdk1.8.0_251
>> 问题:最近上线的Flink程序,频繁young
>> gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps
>> -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format
>> b,file=user.dump 26326
>> 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
>> sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
>> https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
>> 不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。

Re: Flink程序内存Dump不了

Posted by Guo Thompson <gw...@gmail.com>.
可能是jm 和 tm之间的心跳时间太短了, dump的过程会stop the world,tm就不响应jm的heartbeat了;

lxk <lx...@163.com> 于2023年2月14日周二 14:32写道:

> Flink version:1.16
> java version: jdk1.8.0_251
> 问题:最近上线的Flink程序,频繁young
> gc,几秒一次,在调整了新生代大小之后,还是没有解决,目前整个jvm堆大小是3.57g。因此想通过程序内存情况来分析哪里问题有问题,我们通过yarn上的applicationId,使用ps
> -ef|grep 1666758697316_2639108,找到对应的pid,最后执行 jmap -dump:format
> b,file=user.dump 26326
> 命令生成dump文件,但我们测试了很多个程序,只要一开始dump,都会对线上程序产生影响,程序的container会莫名的死掉,然后程序重启。具体执行命令后的报错如下:
> sun.jvm.hotspot.debugger.UnmappedAddressException: 7f74efa5d410
> https://pic.imgdb.cn/item/63eb2a46f144a010071899ba.png
> 不知道大家有没有遇见这个问题,是我们使用的姿势不对,还是目前使用的版本有什么问题,希望大家能够给出一些建议和看法。