Hash join exceeded maximum number of recursions, without reducing partitions enough to be memory resident. Probably cause: Too many duplicate keys.

2022-03-27 文章 Asahi Lee
??Flink 1.13.2 HiveCatalogHive Caused by: java.lang.RuntimeException: Hash join exceeded maximum number of recursions, without reducing partitions enough to be memory resident. Probably cause: Too many duplicate keys. at

Re: 计算UV时使用了PurgingTrigger仍旧发生taskManger OOM的问题

2022-03-27 文章 yue ma
看上去主要是 state 在heap中太大导致的, 建议可以切换为 RocksdbStatebackend yj h 于2022年3月27日周日 17:07写道: > 请教一个taskmanager oom的问题,我在计算一天的uv,采用ContinuousEventTimeTrigger 来3分钟触发一次 > > 配置相关: > 配置是2个机器,每个2核,slots设置的也是每个2,并行度是4,其他jobmanager和taskmanager的内存是默认配置 > > 目前采取的排查步骤: >

Re: 计算UV时使用了PurgingTrigger仍旧发生taskManger OOM的问题

2022-03-27 文章 r pp
purgingTrigger 是触发后清除windowstate,3min的触发,windowstate 会保存3min 的数据,这个看gc也可以。 yj h 于 2022年3月28日周一 上午12:08写道: > hi,thank you, 是你说的TM内存不够的问题 > 我9点左右分下了下gc的日志,Gcviewr看显示fullgc后最大剩下300M左右,我看帖子提到的经验就把TM > heap提升到了1GB,测试过,在总共500M的数据下没有发生OOM 了 > > 另外咨询一下 > 我要怎么测试3min来了多少数据? > 调整TM应该基于哪些考虑 ,在这个场景下

Re: 计算UV时使用了PurgingTrigger仍旧发生taskManger OOM的问题

2022-03-27 文章 yj h
hi,thank you, 是你说的TM内存不够的问题 我9点左右分下了下gc的日志,Gcviewr看显示fullgc后最大剩下300M左右,我看帖子提到的经验就把TM heap提升到了1GB,测试过,在总共500M的数据下没有发生OOM 了 另外咨询一下 我要怎么测试3min来了多少数据? 调整TM应该基于哪些考虑 ,在这个场景下 只要符合3min内能放下的数据是不是就可以了 best regards! r pp 于2022年3月27日周日 23:46写道: > hi~ 因为3min 的Trigger 触发 ,所以,内存里会保存3min内的数据,然后,删除又新增。所以你这边

Re: 计算UV时使用了PurgingTrigger仍旧发生taskManger OOM的问题

2022-03-27 文章 r pp
hi~ 因为3min 的Trigger 触发 ,所以,内存里会保存3min内的数据,然后,删除又新增。所以你这边 3min 内总数据量是多少?内存大概多大?可以试着调整TM 的内存量

计算UV时使用了PurgingTrigger仍旧发生taskManger OOM的问题

2022-03-27 文章 yj h
请教一个taskmanager oom的问题,我在计算一天的uv,采用ContinuousEventTimeTrigger 来3分钟触发一次 配置相关: 配置是2个机器,每个2核,slots设置的也是每个2,并行度是4,其他jobmanager和taskmanager的内存是默认配置 目前采取的排查步骤: 1.最开始只调用了.trigger(ContinuousEventTimeTrigger.of(Time.minutes(3))) 很快就oom掉了 2.采用了evictor