ASM is not Discovering Disks on Solaris: ORA-15025 ORA-27041 SVR4 Error: 5: I/O error. (Doc ID 1300393.1)

Last updated on AUGUST 09, 2017

Applies to:

Oracle Database - Enterprise Edition - Version 10.2.0.1 to 12.1.0.2 [Release 10.2 to 12.1]
Oracle Solaris on x86-64 (64-bit)
Oracle Solaris on SPARC (64-bit)
***Checked for relevance on 24-Mar-2015***

Symptoms


1) Unable to add a new disks to existing diskgroups or unable to create new diskgroups using new disks due to the next errors (on Solaris):


SQL> create diskgroup testdg external redundancy disk '/dev/rdsk/c4t60060480000190103592533031453837d0s2';
create diskgroup testdg external redundancy disk '/dev/rdsk/c4t60060480000190103592533031453837d0s2'
*
ERROR at line 1:
ORA-15018: diskgroup cannot be created
ORA-15031: disk specification
'/dev/rdsk/c4t60060480000190103592533031453837d0s2' matches no disks
ORA-15025: could not open disk
'/dev/rdsk/c4t60060480000190103592533031453837d0s2'
ORA-27041: unable to open file
SVR4 Error: 5: I/O error
Additional information: 42
Additional information: 0
Additional information: 103997248




2) Disks have the correct ownership and permissions:


SQL> !ls -l /dev/rdsk/c4t60060480000190103592533031453837d0s2
lrwxrwxrwx 1 root root 67 Feb 22 20:53 /dev/rdsk/c4t60060480000190103592533031453837d0s2 ->

../../devices/scsi_vhci/ssd@g60060480000190103592533031453837:c,raw


SQL> ! ls -l /devices/scsi_vhci/ssd@g60060480000190103592533031453837:c,raw
crw-rw---- 1 oracle dba 118, 338 Mar 2 09:48

/devices/scsi_vhci/ssd@g60060480000190103592533031453837:c,raw



3) Also, it can be discovered by ASM:


SQL> show parameter asm

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups string LOANIQ_REDO01DG01, LOANIQ_REDO
02DG01, LOANIQ_ARCHDG01, LOANI
Q_DATADG01
asm_diskstring string /dev/rdsk/*

asm_power_limit integer 1

SQL> select path from v$asm_disk;

PATH
--------------------------------------------------------------------------------
/dev/rdsk/c4t60060480000190103592533031453837d0s2



4) And the disk can be accessed at OS level using dd:


SQL> !dd if=/dev/rdsk/c4t60060480000190103592533031453837d0s2 of=/dev/null count=100 bs=8192
100+0 records in
100+0 records out

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms