* * * READ ME * * * * * * Veritas Oracle Disk Manager 5.1 SP1 RP3 * * * * * * P-patch 2 * * * Patch Date: 2017-07-21 This document provides the following information: * PATCH NAME * OPERATING SYSTEMS SUPPORTED BY THE PATCH * PACKAGES AFFECTED BY THE PATCH * BASE PRODUCT VERSIONS FOR THE PATCH * SUMMARY OF INCIDENTS FIXED BY THE PATCH * DETAILS OF INCIDENTS FIXED BY THE PATCH * INSTALLATION PRE-REQUISITES * INSTALLING THE PATCH * REMOVING THE PATCH PATCH NAME ---------- Veritas Oracle Disk Manager 5.1 SP1 RP3 P-patch 2 OPERATING SYSTEMS SUPPORTED BY THE PATCH ---------------------------------------- HP-UX 11i v3 (11.31) PACKAGES AFFECTED BY THE PATCH ------------------------------ VRTSodm BASE PRODUCT VERSIONS FOR THE PATCH ----------------------------------- * Veritas Storage Foundation 5.1 SP1 * Veritas Storage Foundation Cluster File System 5.1 SP1 * Veritas Storage Foundation for Oracle RAC 5.1 SP1 * Veritas Storage Foundation HA 5.1 SP1 SUMMARY OF INCIDENTS FIXED BY THE PATCH --------------------------------------- Patch ID: PHKL_44614 * 3916665 (3910248) ODM IO may get hung while performing read/write operations. * 3922548 (3922711) Installation of VRTSodm patch may display some errors. Patch ID: PHKL_43918 * 3076427 (2444146) The Oracle Disk Manager read returns EINTR while running unspecified Oracle jobs. * 3479814 (2693010) Formatted uncompressed files created by the catman(1M) command for Veritas File System (VxFS) man patches remain available even after the removal of the VxFS package. Patch ID: PHKL_43538 * 3138644 (3101418) Oracle during startup displays ORA-01513 errors. * 3187194 (3232326) Unification of VxFS and ODM patch. Patch ID: PHKL_42741 DETAILS OF INCIDENTS FIXED BY THE PATCH --------------------------------------- This patch fixes the following incidents: Patch ID: PHKL_44614 * 3916665 (Tracking ID: 3910248) SYMPTOM: ODM I/O operations hang due to a deadlock between two threads performing I/O to the same file. The threads involved in the IO operations may have stacks as below: Thread 1 : inline swtch_to_thread+0x220 () _swtch+0x52 () _mp_b_sema_sleep+0x320 () b_psema_c+0x460 () mutex_lock+0x70 () pfd_lock+0x50 () fault_in_pages+0x2e0 () bring_in_pages+0x330 () inline vaslockpages+0x220 () pas_pin_core+0x80 () pas_pin+0x340 () vx_memlock+0x70 () vx_dio_chain_start+0xf0 () vx_dio_iovec+0x380 () vx_dio_rdwri+0x280 () vx_dio_read+0x200 () vx_read1+0x580 () vx_rdwr+0x1060 () odm_vx_io_retry+0xa0 () odm_vx_iocleanup+0x220 () odm_io_sync+0xc40 () odm_io+0x830 () odm_io_stat+0x170 () odmioctl+0x190 () vno_ioctl+0x350 () ioctl+0x410 () syscall+0x5a0 () Thread 2 : slpq_swtch_core+0x520 () real_sleep+0x400 () sleep_spinunlock2+0x4f () sleep_spinunlock+0x61 () vxg_ilock_wait+0x100 () vxg_range_cmn_lock+0x410 () vxg_api_range_lock+0xe0 () vx_glm_range_lock+0x70 () vx_glmrange_rangelock+0x150 () inline vx_irwlock2+0x60 () vx_irwlock+0xa0 () vx_rdwr+0x12a0 () odm_vx_io_retry+0x1b0 () odm_vx_iocleanup+0x220 () odm_io_sync+0xc40 () odm_io+0x830 () odm_io_stat+0x170 () odmioctl+0x190 () vno_ioctl+0x350 () ioctl+0x410 () syscall+0x5a0 () DESCRIPTION: Deadlock is observed between ODM reader and ODM writer thread while performing IO on HOLE extent. ODM Reader thread holds IRWLOCK in SHARED mode and waits for locking the pages while ODM writer thread locks the pages and waits for IRWLOCK held by ODM Reader thread. RESOLUTION: The code is changed to have ODM providing a hint to VxFS to specify that it is a HOLE extent being read by ODM so VxFS does not require the pages to be locked. The fix consists of two parts, one from the VxFS patch and the other from the ODM patch. * 3922548 (Tracking ID: 3922711) SYMPTOM: Installation of VRTSodm package and patch bundle may display following errors: ERROR: Software "VRTSodm.ODM-MAN" was not found on host ". ERROR: Software "VRTSodm.ODM-MAN" was not found on host ". DESCRIPTION: The bundle installation of VRTSodm package and patch may report errors, while installing the VRTSodm.ODM-KRN fileset from patch. The postinstall script of the VRTSodm.ODM-KRN fileset from patch cleans up any remaining compressed file created by catman command. It checks whether the fileset VRTSodm.ODM-MAN is installed on the machine or not. Errors from this operation is currently not handled properly, resulting in display of errors in installation logs. RESOLUTION: Postinstall script has been modified to avoid displaying these errors, if VRTSodm.ODM-KRN fileset is not found. Patch ID: PHKL_43918 * 3076427 (Tracking ID: 2444146) SYMPTOM: The Oracle Disk Manager (ODM) read returns EINTR while running unspecified Oracle jobs. Oracle returns following error: ORA-01115: IO error reading block from file 11 (block # ) ORA-01110: data file 11: '/' ORA-17500: ODM err:ODM ERROR V-41-4-2-281-4 Interrupted system call Oracle says that ODM ERROR V-41-4-2-281-4 Interrupted system call DESCRIPTION: In the ODM API version 1, if Oracle specified that IO is interruptible and the thread is interrupted then ODM has to indicate that by setting the ODM_IO_POSTED flag in the status word of the request. Oracle retries the IO after seeing this flag in the status word. ODM did not handle this condition and hence returned the error. In the ODM API version 2, all IO waits are non- interruptible. RESOLUTION: The code is modified to check if the IO is interruptible and set the appropriate kernel flag. * 3479814 (Tracking ID: 2693010) SYMPTOM: Formatted uncompressed files created by the catman(1M) command for Veritas File System (VxFS) man patches remain available even after the removal of the VxFS package. DESCRIPTION: The formatted compressed files created by the catman(1M) command for VxFS man pages are not removed during the removal/uninstall of patches. RESOLUTION: The code is modified in the postremove and preinstall/postinstall packaging scripts to cleanup any remaining formatted uncompressed files created by the catman(1M) command. Patch ID: PHKL_43538 * 3138644 (Tracking ID: 3101418) SYMPTOM: The invalid current time is returned by the operating system (Oracle error code ORA-01513) during Oracle startup. DESCRIPTION: Oracle intercepts calls to the localtime_r() function as it is not asynchronous signal safe. They do not support any client library to spawn a thread and call the localtime_r() function. The localtime_r() function is called from the feature_tracking library as a part of the odm_discover() function in VRTSodm. RESOLUTION: The code is modified so that it does not spawn the thread and call the localtime_r() function, while feature_tracking. * 3187194 (Tracking ID: 3232326) SYMPTOM: Currently, the kernel and the command patches are shipped separately for oracle disk manager (ODM). DESCRIPTION: The ODM patches which are shipped are always interdependent. The kernel patch is always dependent on the command patch. This means you must install the command and the kernel patch together and reboot the machine. Since, both the patches are always installed together, the patches are now combined into a single kernel patch. RESOLUTION: The packaging of the ODM patch is modified to ship a single kernel patch instead of two different patches. Patch ID: PHKL_42741 * 2586283 (Tracking ID: 2603511) SYMPTOM: On Systems with Oracle 11.2.0.3 or higher installed, database operations can fail with the following message is displayed in the system logs: "ODM ERROR V-41-4-1-105-22 Invalid argument" DESCRIPTION: A change in and Oracle API in 11.2.0.3 , Oracle Disk Manager (ODM) is unable to create a file due to a unrecognized f-mode. RESOLUTION: The code is modified to mask and take into consideration only the files which are known to ODM instead of failing the creation of the file. INSTALLING THE PATCH -------------------- 1.Installing VxFS 5.1SP1RP3P2 patch: a)If you install this patch on a CVM cluster, install it one system at a time so that all the nodes are not brought down simultaneously. b)VxFS 5.1SP1(GA) must be installed before applying these patches. c)To verify the VERITAS file system level, enter: # swlist -l product | egrep -i 'VRTSvxfs' VRTSvxfs 5.1.100.000 VERITAS File System # swlist -l product | egrep -i 'VRTS' VRTSvxfs 5.1.100.000 Veritas File System d)All prerequisite/corequisite patches have to be installed.The Kernel patch requires a system reboot for both installation and removal. e)To install the patch, enter the following command: # swinstall -x autoreboot=true -s PHKL_44614 Incase the patch is not registered, the patch can be registered using the following command: # swreg -l depot , where is the absolute path where the patch resides. REMOVING THE PATCH ------------------ Removing VxFS 5.1SP1RP3P1 patches: a)To remove the patch, enter the following command: # swremove -x autoreboot=true PHKL_44614 SPECIAL INSTRUCTIONS -------------------- NONE OTHERS ------ NONE