首页 > 解决方案 > 在连续 8 次测量到的 GC 抖动后关闭 JVM

问题描述

我正在编写从 GCS 到 BQ 的 Apache Beam BAtch 数据流。我的数据包含400 万条记录。我指定了n1-HighMem-8机器类型。我的数据流从少量数据中工作。

我的用例我的架构不固定,所以我使用.getFailedInserts()方法来获取未插入架构失败的记录。

我已将它们分组并通过 GCS 在同一数据流中使用 BQ 加载作业写入 BQ。

对于这么多的数据,我收到了 7 次错误,然后我的数据流错误了:

E EXT4-fs (dm-0):由于功能不兼容,无法安装为 ext3 E 初始化动态插件探测器时出错:错误(重新)创建驱动程序目录:mkdir /usr/libexec/kubernetes:只读文件系统

E 初始化动态插件探测器时出错:错误(重新)创建驱动程序目录:mkdir /usr/libexec/kubernetes:只读文件系统 E 图像垃圾收集失败一次。Stats 初始化可能尚未完成:未能获取 imageFs 信息:无法找到容器的数据 /

图像垃圾收集失败了一次。Stats 初始化可能尚未完成:未能获取 imageFs 信息:无法找到容器的数据 /

[ContainerManager]:获取rootfs信息失败,无法找到容器/数据

E PercpuUsage 有 0 cpus,但实际数量是 8;忽略额外的 CPU E EXT4-fs (dm-0):由于功能不兼容,无法安装为 ext3

E EXT4-fs (dm-0):由于功能不兼容,无法安装为 ext3 E 初始化动态插件探测器时出错:错误(重新)创建驱动程序目录:mkdir /usr/libexec/kubernetes:只读文件系统

E 初始化动态插件探测器时出错:错误(重新)创建驱动程序目录:mkdir /usr/libexec/kubernetes:只读文件系统 E 图像垃圾收集失败一次。Stats 初始化可能尚未完成:未能获取 imageFs 信息:无法找到容器的数据 /

在连续 8 次测量到的 GC 抖动后关闭 JVM。内存已用/总/最大值 = 27662/33436/33436 MB,GC 上次/最大值 = 93.00/95.00 %,#pushbacks=0,gc thrashing=true。未写入堆转储。

标签: javagarbage-collectiongoogle-cloud-dataflowapache-beam

解决方案


推荐阅读