ASM trying to mount droped diskgroup

oracleoracle-asmoracle-racrac

In my envoriment I am getting the following erro:

ORA-15032: not all alterations performed
ORA-15017: diskgroup "OCR" cannot be mounted
ORA-15040: diskgroup is incomplete

The problem is: I already has droped this diskgroup (I've changed the OCR diskgroup to another diskgroup OCR_NEW). I have two instances, in the first instance it's everything ok, but in the second instance I get this erro.

Where can be the problem? I didn't find anything.

I already tried to disable before to try remove in srvctl command, but not work as well.

[oracle@server2 trace]$ srvctl disable diskgroup -diskgroup OCR
PRCA-1000 : ASM Disk Group OCR does not exist
PRCR-1001 : Resource ora.OCR.dg does not exist

Best Answer

This can be caused by the asm_diskgroups parameter. On older releases (like 11g), this was a typical problem. This parameter was automatically updated, except when a diskgroup was dropped, then its name was not removed from the parameter values.

You can check this if you have access to MOS:

Dropped Diskgroup Still Existing in ASM spfile (Doc ID 2241177.1)

BUG:19146721 - DROP DISKGROUP DOES NOT REMOVE THE ASM_DISKGROUP PARAMETER IN RAC

This parameter should not be set manually (unless you fix the incorrect value) and should be left empty. Below is only for demonstration.

Set asm_diskgroups for this ASM instance to include a diskgroup that does not exist:

SQL> show parameter diskgroups

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups                       string
SQL> show spparameter diskgroups

SID      NAME                          TYPE        VALUE
-------- ----------------------------- ----------- ----------------------------
*        asm_diskgroups                string
SQL> alter system set asm_diskgroups='DOES_NOT_EXIST' scope=spfile sid='+ASM4';

System altered.

Stop + start GI on this node:

# /u01/app/19.0.0/grid/bin/crsctl stop crs
# /u01/app/19.0.0/grid/bin/crsctl start crs

Check the parameter again after ASM was started:

SQL> show parameter diskgroups

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups                       string      DOES_NOT_EXIST
SQL> show spparameter diskgroups

SID      NAME                          TYPE        VALUE
-------- ----------------------------- ----------- ----------------------------
+ASM4    asm_diskgroups                string      DOES_NOT_EXIST

And this is from the alert log of this ASM instance:

2020-04-28T18:59:58.994866+02:00
SUCCESS: diskgroup DATA was mounted
ORA-15032: not all alterations performed
ORA-15017: diskgroup "DOES_NOT_EXIST" cannot be mounted
ORA-15040: diskgroup is incomplete