首页 > 其他分享 >[转帖]Open JDK 8.0_152-b16 崩溃 : [libzip.so+0x12522] newEntry+0x62

[转帖]Open JDK 8.0_152-b16 崩溃 : [libzip.so+0x12522] newEntry+0x62

时间:2024-02-01 13:45:52浏览次数:23  
标签:lang 8.0 152 java Ljava bytes b16 so Java

一. 问题描述

在执行spark任务的时候, JVM崩溃. 崩溃dump日志:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGBUS (0x7) at pc=0x00007f9adacb9522, pid=107874, tid=0x00007f9add417700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_152-b16) (build 1.8.0_152-b16)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.152-b16 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libzip.so+0x12522]  newEntry+0x62
#
# Core dump written. Default location: /home/hadoop/ndp/data/azkaban/executions/9232555/music-push/jobs/spark/nornir/core or core.107874
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

日志省略一部分....
Stack: [0x00007f9add318000,0x00007f9add418000], sp=0x00007f9add4110a0, free space=996k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libzip.so+0x12522] newEntry+0x62
C [libzip.so+0x12c7f] ZIP_GetEntry2+0xff
C [libzip.so+0x3ec0] Java_java_util_zip_ZipFile_getEntry+0xf0
J 116 java.util.zip.ZipFile.getEntry(J[BZ)J (0 bytes) @ 0x00007f9ac537c9ce [0x00007f9ac537c900+0xce]
J 384 C2 java.util.zip.ZipFile.getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry; (101 bytes) @ 0x00007f9ac54486b8 [0x00007f9ac5448360+0x358]
J 500 C2 sun.misc.URLClassPath$JarLoader.getResource(Ljava/lang/String;Z)Lsun/misc/Resource; (85 bytes) @ 0x00007f9ac54b2858 [0x00007f9ac54b27e0+0x78]
J 596 C2 sun.misc.URLClassPath.getResource(Ljava/lang/String;Z)Lsun/misc/Resource; (83 bytes) @ 0x00007f9ac5523fa4 [0x00007f9ac5523ba0+0x404]
J 492 C1 java.net.URLClassLoader$1.run()Ljava/lang/Class; (63 bytes) @ 0x00007f9ac547d97c [0x00007f9ac547d760+0x21c]
J 491 C1 java.net.URLClassLoader\(1</span><span class="token punctuation">.</span>run<span class="token punctuation">(</span><span class="token punctuation">)</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span>Object<span class="token punctuation">;</span> <span class="token punctuation">(</span>5 bytes<span class="token punctuation">)</span> @ 0x00007f9ac54923cc <span class="token punctuation">[</span>0x00007f9ac5492340<span class="token operator">+</span>0x8c<span class="token punctuation">]</span> v ~StubRoutines::call_stub V <span class="token namespace">[libjvm.so+0x695e06]</span> JavaCalls::call_helper<span class="token punctuation">(</span>JavaValue<span class="token operator">*</span><span class="token punctuation">,</span> methodHandle<span class="token operator">*</span><span class="token punctuation">,</span> JavaCallArguments<span class="token operator">*</span><span class="token punctuation">,</span> Thread<span class="token operator">*</span><span class="token punctuation">)</span><span class="token operator">+</span>0x1056 V <span class="token namespace">[libjvm.so+0x72f4ac]</span> JVM_DoPrivileged<span class="token operator">+</span>0x27c J 170 java<span class="token punctuation">.</span>security<span class="token punctuation">.</span>AccessController<span class="token punctuation">.</span>doPrivileged<span class="token punctuation">(</span>Ljava<span class="token operator">/</span>security<span class="token operator">/</span>PrivilegedExceptionAction<span class="token punctuation">;</span>Ljava<span class="token operator">/</span>security<span class="token operator">/</span>AccessControlContext<span class="token punctuation">;</span><span class="token punctuation">)</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span>Object<span class="token punctuation">;</span> <span class="token punctuation">(</span>0 bytes<span class="token punctuation">)</span> @ 0x00007f9ac5396c55 <span class="token punctuation">[</span>0x00007f9ac5396b80<span class="token operator">+</span>0xd5<span class="token punctuation">]</span> J 489 C1 java<span class="token punctuation">.</span>net<span class="token punctuation">.</span>URLClassLoader<span class="token punctuation">.</span>findClass<span class="token punctuation">(</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span>String<span class="token punctuation">;</span><span class="token punctuation">)</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span><span class="token keyword">Class</span><span class="token punctuation">;</span> <span class="token punctuation">(</span>47 bytes<span class="token punctuation">)</span> @ 0x00007f9ac5494814 <span class="token punctuation">[</span>0x00007f9ac5494680<span class="token operator">+</span>0x194<span class="token punctuation">]</span> J 426 C1 java<span class="token punctuation">.</span>lang<span class="token punctuation">.</span>ClassLoader<span class="token punctuation">.</span>loadClass<span class="token punctuation">(</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span>String<span class="token punctuation">;</span>Z<span class="token punctuation">)</span>Ljava<span class="token operator">/</span>lang<span class="token operator">/</span><span class="token keyword">Class</span><span class="token punctuation">;</span> <span class="token punctuation">(</span>122 bytes<span class="token punctuation">)</span> @ 0x00007f9ac54629a4 <span class="token punctuation">[</span>0x00007f9ac5462040<span class="token operator">+</span>0x964<span class="token punctuation">]</span> J 502 C1 sun<span class="token punctuation">.</span>misc<span class="token punctuation">.</span>Launcher<span class="token variable">\)AppClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class; (85 bytes) @ 0x00007f9ac5486d9c [0x00007f9ac5486400+0x99c]
J 501 C1 java.lang.ClassLoader.loadClass(Ljava/lang/String;)Ljava/lang/Class; (7 bytes) @ 0x00007f9ac547d104 [0x00007f9ac547d000+0x104]
v ~StubRoutines::call_stu
日志省略一部分....

    二 . 可能原因

    大多数情况下,当 JVM 实例运行时正在访问的 jar 文件被修改/覆盖时,ZIP_GetEntry 中的崩溃就会发生。以下属性可用于禁用 Jar 文件中央目录结构的内存映射:

    -Dsun.zip.disableMemoryMapping=true

    请注意,启用此属性会对应用程序产生一些性能影响,因为 JVM 需要读取每当它读取 Jar 文件条目时,都会一次又一次地从磁盘上的 Jar 文件中获取中央目录结构。因此,最好确保 jar 文件在 JVM 加载映像时不会被修改或覆盖。

    https://bugs.openjdk.java.net/browse/JDK-8214788
    https://bugs.openjdk.java.net/browse/JDK-8145260

    标签:lang,8.0,152,java,Ljava,bytes,b16,so,Java
    From: https://www.cnblogs.com/jinanxiaolaohu/p/18001042

    相关文章

    • 数据库MySQL8.0.29安装与备份||了解和掌握MySQL的安装和简单使用和备份数据
      内容:了解和掌握MySQL的安装和简单使用:(1) 了解安装MySQL的软硬件环境和安装方法;(2) 熟悉MySQL的相关基本使用;(3) 熟悉MySQL的构成和相关工具;(4) 通过MySQL的使用来理解数据库系统的基本概念。要求:1. 在微机上安装MySQL数据库系统,为后续实验搭建实验环境,提供前期准备;2. 完成实......
    • c# 8.0特性索引和范围
      在阅读代码时碰到以下语法vartype=topic["DevModel/Query/".Length..];其中topic为string,主要疑惑Lenght后面的..查找资料发现为8.0新语法,主要新增了两种语法,官方解释如下使用索引和范围探索数据范围-C#|MicrosoftLearn也有一些其他博主的文章C#8.0特性篇之索引和......
    • CSharp: create pdf file using iText 8.0 in donet 8.0
       /*IDE:VS202217.5OS:windows10.net8.0iText8.0System.Text.Encoding.CodePages*/namespaceConsoleAppPdfdemo{usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.IO;usingSystem.Text;......
    • 数据库研发人员必看的MySQL 8.0新特性
      本文汇总了MySQL8.0面向开发的新特性,总共有12个新特性,有想快速了解8.0新特性的朋友,可以看一下哈文章目录:1.公用表达式支持-CTE2.窗口函数3.表达式作为默认值:4.CHECK支持5.隐藏列-MySQL8.0.236.隐藏索引、降序索引、函数索引(MySQL-8.0.19)7.VALUES语法8.INTERSECT和EXC......
    • MySQL Shell 8.0.32 for GreatSQL编译二进制包
      MySQLShell8.0.32forGreatSQL编译二进制包构建MySQLShell8.0.32forGreatSQL0.写在前面之前已经写过一篇前传MySQLShell8.0.32forGreatSQL编译安装,最近再次编译MySQLShell二进制包时,发现了一些新问题,因此重新整理更新本文档。1.几处新问题这次编译MySQLShe......
    • CSharp: iText 8.0 in donet 4.8.1
       usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.IO;usingSystem.Text;usingiText.IO.Font;usingiText.IO.Image;usingiText.Kernel.Font;usingiTe......
    • .Net Core3.1 升级到8.0(3.1升级到更高版本)
      NETCore3.1已经用了很长一段时间,其实在2022年的年底微软已经不提供支持了,后面的一个 LTS 版本.NET6也会在2024年11月终止支持,所以直接升级到.NET8是最好的选择。微软官方推出了升级工具:UpgradeAssistant,链接地址如下:https://dotnet.microsoft.com/zh-cn/plat......
    • MySQL-8.0.30升级MySQL-8.0.34
      记录一次MySQL漏洞升级操作升级背景:OracleMySQL官方发布MySQL-8.0.30版本高危漏洞CVE-2022-32221、CVE-2022-37434等,受影响版本涉及到8.0.32,官方建议升级至8.0.33,最好使用8.0.34,这里我们将MySQL-8.0.30升级至MySQL-8.0.34版本方案:将原mysql目录重命名,解压新的程序目录软链接到......
    • 洛谷题单指南-排序-P1152 欢乐的跳
      原题链接:https://www.luogu.com.cn/problem/P1152题意解读:要判断相邻数差的绝对值是否覆盖1~n-1,只需遍历相邻两数之差,借助数组标记差的绝对值是否存在,然后遍历数组即可。解题思路:此题有两个注意点:1、数值要用longlong2、计算差值绝对值后,标记桶数组时,有可能导致越界,因为每个......
    • ubuntu18.04 局域网配置git server步骤
      1.安装ssh2.安装gitsudoapt-getupdatesudoaptinstallvimsudoaptinstallopenssh-serversudoaptinstallgit3.cdhome目录mkdircodecdcodegitinit--baretest.git#创建git-server仓库远程服务器远程地址:/home/joker/code/test.git4.本地电脑目录操作......