Sometimes as DBA you will see strange signs on your way, like this one ASM +DATA diskgroup with no data, no files something taking space(notice the Total_MB != Free_MB):
ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 4095940 3271458 0 3271458 0 N DATA/ MOUNTED EXTERN N 512 4096 1048576 102398 102304 0 102304 0 N REDO/ MOUNTED EXTERN N 512 4096 1048576 1019 623 0 623 0 Y SYSTEMDG/ ASMCMD> find +DATA * ASMCMD> ls +DATA ASMCMD> lsdsk Path /dev/oracleasm/disks/DATA_05 /dev/oracleasm/disks/DATA_06 /dev/oracleasm/disks/DATA_07 /dev/oracleasm/disks/DATA_08 /dev/oracleasm/disks/DATA_09 /dev/oracleasm/disks/DATA_10 /dev/oracleasm/disks/DATA_11 /dev/oracleasm/disks/DATA_12 /dev/oracleasm/disks/DATA_13 /dev/oracleasm/disks/DATA_14 /dev/oracleasm/disks/REDO_02 /dev/oracleasm/disks/SYSTEMDG_DISK01 ASMCMD>
Rebalance won’t help, ASM logs are clear and so you are more and more confused. The situtation is a little bit awkward but one can find a negative (!) capacity (close to -2^32 value) of some ASM disks that were recently added:
ASMCMD> lsdsk -k -G DATA Total_MB Free_MB OS_MB Name Failgroup Failgroup_Type Library Label UDID Product Redund Path 409594 409037 409594 DATA_0000 DATA_0000 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_05 409594 408885 409594 DATA_0001 DATA_0001 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_06 409594 408895 409594 DATA_0002 DATA_0002 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_07 409594 408680 409594 DATA_0003 DATA_0003 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_08 409594 408987 409594 DATA_0004 DATA_0004 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_09 409594 408931 409594 DATA_0005 DATA_0005 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_10 409594 409079 409594 DATA_0006 DATA_0006 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_11 409594 408964 409594 DATA_0007 DATA_0007 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_12 409594 -4294555512 409594 DATA_0008 DATA_0008 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_13 409594 -4294554748 409594 DATA_0009 DATA_0009 REGULAR System UNKNOWN /dev/oracleasm/disks/DATA_14 ASMCMD>
To fix the problem one can drop the affected ASM disks, remove ASMLib labels, and the critical thing is to reinitialize/overwrite with 0 (using dd from /dev/zero) large header on the individual LUN (at least 10MB) and afterwards re-add those disks (using ASMLib) to the diskgroup using normal ALTER DISKGROUP +DG ADD DISK syntax. Afterwards you will find normal utilization in the diskgroup:
SQL> select name, state, type, total_mb, free_mb from v$asm_diskgroup; NAME STATE TYPE TOTAL_MB FREE_MB ------------------------------ ----------- ------ ---------- ---------- DATA MOUNTED EXTERN 4095940 4090620 REDO MOUNTED EXTERN 102398 102304 SYSTEMDG MOUNTED EXTERN 1019 623 SQL>
Reason: probably LUN disks were not properly initialized (only 1MB has been overwritten), however no errors were found during 1st initialization. Another strange thing on so not critical development system