X86 DBCA, NETCA GIVE JAVA HOTSPOT ERROR IF ON X86_64 HARDWARE

简介:     在使用DBCA命令创建新的数据库时,DBCA命令无法启动。运行的环境是宿主机64bit+AMD cpu, 而客户机为Linux 32bit + Grid Infrastructure(32) + Oracle database software(32)的情形。

    在使用DBCA命令创建新的数据库时,DBCA命令无法启动。运行的环境是宿主机64bit+AMD cpu, 而客户机为Linux 32bit + Grid Infrastructure(32) + Oracle database software(32)的情形。原本想着32bit运行的会快一点,没想到Bug 8670579 在执行dbca时再一次被触发,根据Oracel描述,类似的NETCA也会触发这个Bug。
  
一、故障现象
    [oracle@linux1 ~]$ dbca
    #
    # An unexpected error has been detected by HotSpot Virtual Machine:
    #
    #  SIGSEGV (0xb) at pc=0x9e0ea498, pid=4242, tid=3086584016
    #
    # Java VM: Java HotSpot(TM) Server VM (1.5.0_17-b02 mixed mode)
    # Problematic frame:
    # C  [libnnz11.so+0x3c498]
    #
    # An error report file with more information is saved as hs_err_pid4242.log
    #
    # If you would like to submit a bug report, please visit:
    #  
http://java.sun.com/webapps/bugreport/crash.jsp
    #
    Aborted
    [oracle@linux1 ~]$

 

二、故障描述
    #MeatLink [ID 942076.1]给出了关于这个问题的描述,那就是在客户机上安装了32bit的操作系统与Oracle,而宿主机硬件为64bit平台
    #该现象为一个Oracle Bug,Bug号:8670579

    Applies to:
    Oracle Server - Enterprise Edition - Version 11.2.0.0 and later
    Linux x86

    Symptoms
    After successfully installing 32-bit 11gR2 (11.2.0.1.0) software onto a 32-bit Linux OS (x86) system,  neither netca or dbca can be run:

    Dbca error is:
    #
    # An unexpected error has been detected by HotSpot Virtual Machine:
    #
    # SIGSEGV (0xb) at pc=0x9dc0c35e, pid=8292, tid=3086022864
    #
    # Java VM: Java HotSpot(TM) Server VM (1.5.0_17-b02 mixed mode)
    # Problematic frame:
    # C [libnnz11.so+0x3c35e]

 

    Netca error is:
    # An unexpected error has been detected by HotSpot Virtual Machine:
    #
    # SIGSEGV (0xb) at pc=0xa2c2235e, pid=8272, tid=3086309584
    #
    # Java VM: Java HotSpot(TM) Server VM (1.5.0_17-b02 mixed mode)
    # Problematic frame:
    # C [libnnz11.so+0x3c35e]

    Other Problematic frame values have also been reported, and include:
    [libnnz11.so+0x3c35e]
    [ld-linux.so.2+0xc1fc]

    Changes
    Although the Linux OS that has been installed is indeed a supported 32-bit Linux OS, the hardware that is being used is 64-bit x86_64 hardware.

    Cause
    You are encountering published Bug 8930861, “X86 DBCA, NETCA GIVE JAVA HOTSPOT ERROR IF ON X86_64 HARDWARE”

    You have Oracle's 32-bit 11.2.0.1.0 RDBMS software, a supported 32-bit Linux OS, but you are on 64-bit x86_64 hardware.

    the command "cat /proc/cpuinfo" shows:
        model name : Quad-Core AMD Opteron(tm) Processor 2356

 

三、解决方案
    1. Please find out if there is any business reason that the 64-bit hardware is only running a
    32-bit OS. If not, then Oracle recommends that you re-install a 64-bit OS and 64-bit Oracle to
    avoid published Bug 8930861, “X86 DBCA, NETCA GIVE JAVA HOTSPOT ERROR IF ON X86_64 HARDWARE”

    2.  If there is some business reason that you must use 64-bit hardware running a 32-bit Linux OS, then
    before you can use the 11gR2 DBCA or NETCA tools, you will need to apply patch 8670579 “NETCA/DBCA
    FAILED WITH HOTSPOT VIRTUAL MACHINE”. You need to download the 11.2.0.1.0 version of the patch
    (p8670579_112010_LINUX.zip) and install it.

    References
    @ BUG:8670579 - DBBETA :NETCA/DBCA FAILED WITH HOTSPOT VIRTUAL MACHINE
    BUG:8930861 - X86 DBCA, NETCA GIVE JAVA HOTSPOT ERROR IF ON X86_64 HARDWARE

    #检查本机
    [root@linux1 ~]# cat /proc/cpuinfo | grep model
    model           : 4
    model name      : AMD Phenom(tm) II X4 955 Processor
    model           : 4
    model name      : AMD Phenom(tm) II X4 955 Processor

    #下载8670579 patch,再使用opatch apply 即可。
    #在安装Grid Infrastructure时执行root.sh时也会有出发该bug的情形,最主要的原因应该是对AMD cpu,32bit 平台支持不好。
    #因此,宿主机安装在64bit硬件平台,客户机使用32位,需要将该patch应用到Grid Infrastructure,其次也要应用到Oracle database software。
    #关于执行root.sh时,会收到Failed to create or upgrade OLR 错误。

     BUG:8670579 具体如何实现apply,可参考: Failed to create or upgrade OLR
 

Oracle 牛鹏社

 

更多参考

DML Error Logging 特性 

PL/SQL --> 游标

PL/SQL --> 隐式游标(SQL%FOUND)

批量SQL之 FORALL 语句

批量SQL之 BULK COLLECT 子句

PL/SQL 集合的初始化与赋值

PL/SQL 联合数组与嵌套表
PL/SQL 变长数组
PL/SQL --> PL/SQL记录

SQL tuning 步骤

高效SQL语句必杀技

父游标、子游标及共享游标

绑定变量及其优缺点

dbms_xplan之display_cursor函数的使用

dbms_xplan之display函数的使用

执行计划中各字段各模块描述

使用 EXPLAIN PLAN 获取SQL语句执行计划

 

目录
相关文章
|
16天前
|
Java Windows
【Azure Function】部署Java Function失败:报错deploy [ERROR] Status code 401和警告 'China North 3' may not be a valid region
1:deploy [ERROR] Status code 401, (empty body). 2: China North 3 may not be a valid region,please refer to https://aka.ms/maven_function_configuration#supported-regions for values. 3:  <azure.functions.maven.plugin.version>1.36.0</azure.functions.maven.plugin.version>
29 11
|
5月前
|
Rust Java 文件存储
Java系统中的错误码设计问题之通过properties文件管理Error Code如何解决
Java系统中的错误码设计问题之通过properties文件管理Error Code如何解决
69 1
|
5月前
|
存储 Oracle 安全
揭秘Java并发核心:深入Hotspot源码腹地,彻底剖析Synchronized关键字的锁机制与实现奥秘!
【8月更文挑战第4天】在Java并发世界里,`Synchronized`如同导航明灯,确保多线程环境下的代码安全执行。它通过修饰方法或代码块实现独占访问。在Hotspot JVM中,`Synchronized`依靠对象监视器(Object Monitor)机制实现,利用对象头的Mark Word管理锁状态。
59 1
|
3月前
|
Java
让星星⭐月亮告诉你,Java异常分类[Throwable(Error/Exception(RuntimeException/其他异常)) 检查时异常 非检查时异常]
本文深入解析了Java异常处理机制,重点介绍了`Throwable`类及其子类`Error`和`Exception`,并通过实例代码、流程图和表格详细解释了异常的分类、区别及处理方法,帮助读者掌握异常处理的关键技巧,提升程序的稳定性和健壮性。
97 1
|
4月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
3月前
|
Java
Error:java: 无效的目标发行版: 11解决方案
Error:java: 无效的目标发行版: 11解决方案
102 0
|
4月前
|
Java
6-17|java error
6-17|java error
|
5月前
|
前端开发 Java
Java HotSpot(TM) 64-Bit Server VM warning
Java HotSpot(TM) 64-Bit Server VM warning
2703 1
|
5月前
|
Java 编译器
Error:java: Compilation failed: internal java compiler error
Error:java: Compilation failed: internal java compiler error
117 1
|
5月前
|
JSON 前端开发 JavaScript
JSON parse error: Cannot deserialize value of type `java.lang.Integer` from Boolean value
这篇文章讨论了前端Vue应用向后端Spring Boot服务传输数据时发生的类型不匹配问题,即后端期望接收的字段类型为`int`,而前端实际传输的类型为`Boolean`,导致无法反序列化的问题,并提供了问题的诊断和解决方案。
JSON parse error: Cannot deserialize value of type `java.lang.Integer` from Boolean value