My Oracle Support Banner

ASM 11.2.0.2 Is Not Releasing File Descriptors After Drop or Dismount Diskgroup. (Doc ID 1306574.1)

Last updated on FEBRUARY 06, 2018

Applies to:

Oracle Database - Enterprise Edition - Version 11.2.0.2 to 11.2.0.2 [Release 11.2]
Information in this document applies to any platform.
Checked for relevance on *** 02-Sep-2014 ***

Symptoms

A) DROP DISKGROUP SCENARIO:

On release 11.2.0.2, after drop a diskgroups ASM is not releasing file descriptors on the raw devices.

<Document 4693355.8> sates that this problem (<Bug:4693355> & <Bug:7225720>) is fixed  on release 11.2.0.1.0, but the problem persists on release 11.2.0.2.0.  

Example:

1) Create a diskgroup with 4 raw devices:



$ sqlplus "/as sysasm"

SQL*Plus: Release 11.2.0.2.0 Production on Thu Feb 17 21:01:26 2011

Copyright (c) 1982, 2010, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Automatic Storage Management option


SQL> !uname -a
HP-UX ceitclu1 B.11.31 U ia64 3872670381 unlimited-user license


SQL> !ls -l /dev/haclu_11g/rhaclu_asm1_8g
crw-rw-r-- 1 haclu dba 64 0x030001 Apr 7 2010 /dev/haclu_11g/rhaclu_asm1_8g

SQL> !ls -l /dev/haclu_11g/rhaclu_asm2_8g
crw-rw-r-- 1 haclu dba 64 0x030002 Apr 7 2010 /dev/haclu_11g/rhaclu_asm2_8g

SQL> !ls -l /dev/haclu_11g/rhaclu_asm3_8g
crw-rw-r-- 1 haclu dba 64 0x030003 Apr 7 2010 /dev/haclu_11g/rhaclu_asm3_8g

SQL> !ls -l /dev/haclu_11g/rhaclu_asm4_8g
crw-rw-r-- 1 haclu dba 64 0x030004 Apr 7 2010 /dev/haclu_11g/rhaclu_asm4_8g



SQL> create diskgroup DATADG external redundancy disk
'/dev/haclu_11g/rhaclu_asm1_8g',
'/dev/haclu_11g/rhaclu_asm2_8g',
'/dev/haclu_11g/rhaclu_asm3_8g',
'/dev/haclu_11g/rhaclu_asm4_8g'; 2 3 4 5

Diskgroup created.




SQL> select name, group_number, state from v$asm_diskgroup where name like 'DATADG';

NAME GROUP_NUMBER STATE
------------------------------ ------------ -----------
DATADG 3 MOUNTED


SQL> select name, path from v$asm_disk where group_number = '2';

NAME PATH
------------------------------ --------------------------------------------------
DATADG_0000 /dev/haclu_11g/rhaclu_asm1_8g
DATADG_0001 /dev/haclu_11g/rhaclu_asm2_8g
DATADG_0002 /dev/haclu_11g/rhaclu_asm3_8g
DATADG_0003 /dev/haclu_11g/rhaclu_asm4_8g




b) Then using lsod command confirmed the disks were opened:



$ asmcmd

ASMCMD> lsod -G DATADG
Instance Process OSPID Path
1 oracle@ceitclu1 (DBW0) 15808 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm2_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm2_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open





c) Then drop the DATADG diskgroup:



$ asmcmd
ASMCMD> dropdg -r DATADG
ASMCMD> lsdg DATADG
ASMCMD-08001: diskgroup 'DATADG' does not exist or is not mounted
ASMCMD> exit




d) Using lsod, confirmed the 4 disks remained opened after drop the DATADG:



$ asmcmd

ASMCMD> lsod
Instance Process OSPID Path
1 oracle@ceitclu1 (DBW0) 15808 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (DBW0) 15808 /dev/haclu_11g/rhaclu_ocr2_512m
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm2_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_ocr1_512m
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_ocr2_512m
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_vote1_512m
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_vote2_512m
1 oracle@ceitclu1 (GMON) 15818 /dev/haclu_11g/rhaclu_vote3_512m
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_ocr1_512m
1 oracle@ceitclu1 (LGWR) 15810 /dev/haclu_11g/rhaclu_ocr2_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm1_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm2_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm3_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_asm4_8g <(== Disk is open
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_ocr1_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_ocr1_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_ocr2_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_vote1_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_vote1_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_vote2_512m
1 oracle@ceitclu1 (RBAL) 15816 /dev/haclu_11g/rhaclu_vote3_512m


ASMCMD> exit




e) Also, using fuser confirmed the disks were still opened:


ceitclu1:/# fuser /dev/haclu_11g/rhaclu_asm3_8g
/dev/haclu_11g/rhaclu_asm3_8g: 15808o 15816o 15818o

ceitclu1:/# fuser /dev/haclu_11g/rhaclu_asm1_8g
/dev/haclu_11g/rhaclu_asm1_8g: 15816o 15810o 15818o

ceitclu1:/# fuser /dev/haclu_11g/rhaclu_asm2_8g
/dev/haclu_11g/rhaclu_asm2_8g: 15816o 15818o

ceitclu1:/# fuser /dev/haclu_11g/rhaclu_asm4_8g
/dev/haclu_11g/rhaclu_asm4_8g: 15816o 15810o 15818o



B) DISMOUNT DISKGROUP SCENARIO:

After dismount a diskgroup, the file descriptors on the ASM disks are not released as well.



$> sqlplus /nolog
SQL*Plus: Release 11.2.0.2.0 Production on Mon Mar 28 11:40:57 2011
Copyright (c) 1982, 2010, Oracle. All rights reserved.
SQL> connect / as sysasm
Connected.
SQL> shutdown immediate ;

ASM instance shutdown
SQL> startup
SQL> exit




$> asmcmd
ASMCMD> lsod
Instance Process OSPID Path
ASMCMD> mount fra96
ASMCMD> ls
FRA96/

ASMCMD> lsod
Instance Process OSPID Path
1 oracle@th1dt096 (DBW0) 1680 /dev/vg513/rlvol2
1 oracle@th1dt096 (GMON) 1695 /dev/vg513/rlvol1
1 oracle@th1dt096 (GMON) 1695 /dev/vg513/rlvol2
1 oracle@th1dt096 (LGWR) 1683 /dev/vg513/rlvol1
1 oracle@th1dt096 (LGWR) 1683 /dev/vg513/rlvol2
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol1
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol1
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol2
1 oracle@th1dt096 (TNS V1-V3) 3401 /dev/vg513/rlvol1
1 oracle@th1dt096 (TNS V1-V3) 3401 /dev/vg513/rlvol2
ASMCMD> umount fra96
ASMCMD> lsod
Instance Process OSPID Path
1 oracle@th1dt096 (DBW0) 1680 /dev/vg513/rlvol2 <(== Disk is still open
1 oracle@th1dt096 (GMON) 1695 /dev/vg513/rlvol1 <(== Disk is still open
1 oracle@th1dt096 (GMON) 1695 /dev/vg513/rlvol2 <(== Disk is still open
1 oracle@th1dt096 (LGWR) 1683 /dev/vg513/rlvol1 <(== Disk is still open
1 oracle@th1dt096 (LGWR) 1683 /dev/vg513/rlvol2 <(== Disk is still open
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol1 <(== Disk is still open
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol1 <(== Disk is still open
1 oracle@th1dt096 (RBAL) 1693 /dev/vg513/rlvol2 <(== Disk is still open
ASMCMD> ls
ASMCMD> exit




Cause

To view full details, sign in with your My Oracle Support account.

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


In this Document
Symptoms
Cause
Solution
References


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.