受影响版本:
问题描述:
Oracle官方在2023年7月发布的最新版本的OPatch(13.9.4.2.13)存在一个新出现的Bug(会导致安装WebLogic的PSU时,出现下面的GDR-70005的报错:
- Caused by: com.oracle.cie.gdr.utils.LocalizedGdrException: GDR-70005: Failed to apply inventory patching to home.
- GDR-70005: A failure occurred while attempting to apply inventory patches to the home
- GDR-70005: Contact customer support.
为了解决上面的问题,官方给出了一个临时补丁,在升级完成OPatch后,再安装这个临时补丁即可(PatchID: 23335292),安装记录如下:
- [2023/10/08 10:19:06] Repair Bug 35619659 before apply wlserver patches.
- Archive: p23335292_13940015_Generic.zip
- creating: 23335292/
- creating: 23335292/etc/
- creating: 23335292/etc/config/
- inflating: 23335292/etc/config/actions.xml
- inflating: 23335292/etc/config/inventory.xml
- inflating: 23335292/etc/config/patchdeploy.xml
- creating: 23335292/files/
- creating: 23335292/files/oracle.nginst.common/
- creating: 23335292/files/oracle.nginst.common/13.9.4.0.0/
- creating: 23335292/files/oracle.nginst.common/13.9.4.0.0/oracle.nginst.common.symbol/
- creating: 23335292/files/oracle.nginst.common/13.9.4.0.0/oracle.nginst.common.symbol/modules/
- inflating: 23335292/files/oracle.nginst.common/13.9.4.0.0/oracle.nginst.common.symbol/modules/com.oracle.cie.gdr_1.8.4.0.jar.23335292
- creating: 23335292/files/inventory/
- creating: 23335292/files/inventory/Components/
- creating: 23335292/files/inventory/Components/oracle.nginst.common/
- creating: 23335292/files/inventory/Components/oracle.nginst.common/13.9.4.0.0/
- creating: 23335292/files/inventory/Components/oracle.nginst.common/13.9.4.0.0/patches/
- creating: 23335292/files/inventory/Components/oracle.nginst.common/13.9.4.0.0/patches/23335292/
- inflating: 23335292/files/inventory/Components/oracle.nginst.common/13.9.4.0.0/patches/23335292/compDef.xml
- inflating: 23335292/README.txt
- Oracle 临时补丁程序安装程序版本 13.9.4.2.13
- 版权所有 (c) 2023, Oracle Corporation。保留所有权利。
-
-
- Oracle 主目录 :/weblogic/Oracle/Middleware/Oracle_Home
- 主产品清单:/weblogic/oraInventory
- 来自 :/weblogic/Oracle/Middleware/Oracle_Home/oraInst.loc
- OPatch 版本 :13.9.4.2.13
- OUI 版本 :13.9.4.0.0
- 日志文件位置:/weblogic/Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2023-10-08_10-19-07上午_1.log
-
-
- OPatch detects the Middleware Home as "/weblogic/Oracle/Middleware/Oracle_Home"
-
- Verifying environment and performing prerequisite checks...
- OPatch continues with these patches: 23335292
-
- 是否继续? [y|n]
- Y (auto-answered by -silent)
- User Responded with: Y
- All checks passed.
-
- 请关闭本地系统上在此 ORACLE_HOME 之外运行的 Oracle 实例。
- (Oracle 主目录 = '/weblogic/Oracle/Middleware/Oracle_Home')
-
-
- 本地系统是否已准备打补丁? [y|n]
- Y (auto-answered by -silent)
- User Responded with: Y
- Backing up files...
- 正在将临时补丁程序 '23335292' 应用于 OH '/weblogic/Oracle/Middleware/Oracle_Home'
-
- 正在为组件 oracle.nginst.common, 13.9.4.0.0 打补丁...
-
- 正在为组件 oracle.nginst.common, 13.9.4.0.0 打补丁...
- Patch 23335292 successfully applied.
- N-Apply process is complete. No bug fixes are lost.
- Log file location: /weblogic/Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2023-10-08_10-19-07上午_1.log
- Executing: com.oracle.cie.gdr.utils.RuntimeExecShutdownHook$Exec@5716d05c
然后,在安装这个临时补丁的过程中,我这边又发现了新的问题。如果这个补丁安装成功后(实际后台还有一个什么脚本在执行,需要等待15至30秒才能结束),在这15-30秒内,如果立马安装新的补丁,就会出现下面的JVM Crash的报错:
- Start to apply the patch, id:33093748
-
- Oracle 临时补丁程序安装程序版本 13.9.4.2.13
- 版权所有 (c) 2023, Oracle Corporation。保留所有权利。
-
- #
- # A fatal error has been detected by the Java Runtime Environment:
- #
- # SIGBUS (0x7) at pc=0x00007fc4627371d0, pid=104444, tid=0x00007fc4650bc700
- #
- # JRE version: Java(TM) SE Runtime Environment (8.0_381) (build 1.8.0_381-b32)
- # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.381-b32 mixed mode linux-amd64 compressed oops)
- # Problematic frame:
- # C [libzip.so+0x121d0] newEntry.isra.4+0x60
- #
- # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
- #
- # An error report file with more information is saved as:
- # /weblogic/tools/bugrepair/hs_err_pid104444.log
- Compiled method (nm) 4178 113 n 0 java.util.zip.ZipFile::getEntry (native)
- total in heap [0x00007fc44d145550,0x00007fc44d1458c0] = 880
- relocation [0x00007fc44d145678,0x00007fc44d1456c0] = 72
- main code [0x00007fc44d1456c0,0x00007fc44d1458c0] = 512
- #
- # 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.
- #
- /weblogic/Oracle/Middleware/Oracle_Home/OPatch/opatch: 行 1364: 104444 已放弃 (吐核)$JAVA $otherOpt $JAVA_VM_OPTION $JRE_MEMORY_OPTIONS -cp $opatchClassPath -DOPatch.ORACLE_HOME="$OH" -DOPatch.DEBUG="$DEBUGVAL" -DOPatch.MAKE="$MAKEVAL" -DOPatch.RUNNING_DIR="$BASE" -DOPatch.MW_HOME="$MWH" -DOPatch.WL_HOME="$WL_HOME" -DOPatch.COMMON_COMPONENTS_HOME="$COMMON_COMPONENTS_HOME" -DOPatch.OUI_LOCATION="$OUI_LOCATION" -DOPatch.FMW_COMPONENT_HOME="$FMW_COMPONENT_HOME" -DOPatch.OPATCH_CLASSPATH="$CLASSPATH" -DOPatch.WEBLOGIC_CLASSPATH="$WEBLOGIC_CLASSPATH" -DOPatch.SKIP_OUI_VERSION_CHECK="$SKIP_OUI_VERSION_CHECK" -DOPatch.NEXTGEN_HOME_CHECK="$IS_NEXTGEN_HOME" -DOPatch.PARALLEL_ON_FMW_OH=$PARALLEL_ON_FMW_OH $FUSION_TRUST_OPTION ${oracleOcmService} ${_bootClassPath} oracle/opatch/OPatch $args $invptr
-
- OPatch failed with error code 134
为了解决这个问题,就需要在安装完成这个临时补丁后,在脚本中设置一个休眠时间,比如
sleep 30s
然后再安装其他补丁,就不会出现上面的问题了。
参考:
https://support.oracle.com/epmos/faces/DocumentDisplay?id=2806740.2
https://support.oracle.com/epmos/faces/DocumentDisplay?id=2962593.1
https://support.oracle.com/epmos/faces/SrDetail?srNumber=3-34497119531