This discussion is archived
6 Replies Latest reply: Sep 7, 2010 2:45 AM by Muhammad.Usman RSS

confusion about required_mirror_free_mb in asm

Muhammad.Usman Newbie
Currently Being Moderated
Hi!

i have confusion about required_mirror_free_mb in asm.

i have 6 disks with normal redundancy and 4 failgroups.

SQL> select STATE,TOTAL_MB,FREE_MB ,NAME,FAILGROUP from v$asm_disk;

STATE TOTAL_MB FREE_MB NAME FAILGROUP
-------- ---------- ---------- ------------------------------ ------------------------------
NORMAL 2047 1421 ASMDISK1 FG1
NORMAL 2047 1424 ASMDISK2 FG1
NORMAL 2047 1424 ASMDISK3 FG2
NORMAL 2047 1424 ASMDISK4 FG2
NORMAL 2047 1423 ASMDISK5 ASMDISK5
NORMAL 2047 1422 ASMDISK6 ASMDISK6

6 rows selected.

Almost all 6 disk have same space consumption.

SQL> select GROUP_NUMBER,DISK_NUMBER,STATE,TOTAL_MB,FREE_MB ,NAME from v$asm_disk;

GROUP_NUMBER DISK_NUMBER STATE TOTAL_MB FREE_MB NAME
------------ ----------- -------- ---------- ---------- ------------------------------
1 0 NORMAL 2047 1421 ASMDISK1
1 1 NORMAL 2047 1424 ASMDISK2
1 2 NORMAL 2047 1424 ASMDISK3
1 3 NORMAL 2047 1424 ASMDISK4
1 4 NORMAL 2047 1423 ASMDISK5
1 5 NORMAL 2047 1422 ASMDISK6

6 rows selected.

SQL>



SQL> select name, type, total_mb, free_mb, required_mirror_free_mb,usable_file_mb from v$asm_diskgroup;

NAME TYPE TOTAL_MB FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB
------------------------------ ------ ---------- ---------- ----------------------- --------------
DATA NORMAL 12282 8538 4094 2222

SQL>

Here is my question that how asm desides REQUIRED_MIRROR_FREE_MB i.e 4GB in above case........
please can anybody answer me.....
regards
M.usman
  • 1. Re: confusion about required_mirror_free_mb in asm
    Sebastian Solbach (DBA Community) Guru
    Currently Being Moderated
    Hi,

    does this:

    Note 798458.1 Incorrect Usable_file_mb Calculation

    answer your question?

    Sebastian
  • 2. Re: confusion about required_mirror_free_mb in asm
    Muhammad.Usman Newbie
    Currently Being Moderated
    thank you for answering me....

    no i just want to know that why required_mirror_free_mb is 4GB.
    i am not asking about Usable_file_mb Calculation.
    i give you an example.....like in my case i have 6 Disks each of 2 gb in size And 4 Failgroups FG1,FG2,ASMDISK5 and ASMDISK6.

    FG1
    ASMDISK1
    ASMDISK2

    FG2
    ASMDISK3
    ASMDISK4

    ASMDISK5

    ASMDISK6
    Total space 2gb*6=12GB
    for database used=3.39GB
    Now required_mirror_free_mb is 4GB.
    12gb-3.39GB-4GB=4.61
    Normal redundancy 4.61/2=2.305....this is Usable_file_mb


    But............
    if i delete ASMDISK5,ASMDISK6

    Total space becomes Total space 2gb*4=8GB
    for database used is still=3.39GB
    But required_mirror_free_mb has changed from 4GB to 2GB.
    8gb-3.39GB-2GB=4.61=2.61
    Normal redundancy 2.61/2=1.305....this is Usable_file_mb

    So how and Why required_mirror_free_mb has change...


    Please answer....if a am wrong anywhere do tell me....

    regards
    M.usman
  • 3. Re: confusion about required_mirror_free_mb in asm
    Sebastian Solbach (DBA Community) Guru
    Currently Being Moderated
    Hi M.usman,

    sorry this entry was wrong. Hence removed.

    Sebastian

    Edited by: ssolbach on Sep 6, 2010 1:16 AM
  • 4. Re: confusion about required_mirror_free_mb in asm
    Muhammad.Usman Newbie
    Currently Being Moderated
    thank you for your reply...now confusion has increased even more....

    now i have change configuration a bit....

    STEp 1)

    i have 6 Disks each of 2 gb in size And 3 Failgroups FG1,FG2,FG3.

    FG1
    ASMDISK1
    ASMDISK2

    FG2
    ASMDISK3
    ASMDISK4

    FG3
    ASMDISK5
    ASMDISK6

    SQL> select GROUP_NUMBER,DISK_NUMBER,STATE,TOTAL_MB,FREE_MB ,NAME from v$asm_disk;

    GROUP_NUMBER DISK_NUMBER STATE TOTAL_MB FREE_MB NAME
    ------------ ----------- -------- ---------- ---------- ------------------------------
    1 0 NORMAL 2047 1420 ASMDISK1
    1 1 NORMAL 2047 1418 ASMDISK2
    1 2 NORMAL 2047 1420 ASMDISK3
    1 3 NORMAL 2047 1419 ASMDISK4
    1 4 NORMAL 2047 1421 ASMDISK5
    1 5 NORMAL 2047 1420 ASMDISK6

    6 rows selected.


    SQL> select name, type, total_mb, free_mb, required_mirror_free_mb,usable_file_mb from v$asm_diskgroup;

    NAME TYPE TOTAL_MB FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB
    ------------------------------ ------ ---------- ---------- ----------------------- --------------
    DATA NORMAL 12282 8518 4094 2212

    required_mirror_free_mb=4GB as you said that mirroring is per failgroup so it means that the largest failure could occur is that any failgroup fails,failgroup comprises of 2 2gb disk so its 4gb.


    STEp 2)
    I deleted two disks 5 and 6 in FG3

    now i have two failgroups FG1 and FG2

    FG1
    ASMDISK1
    ASMDISK2

    FG2
    ASMDISK3
    ASMDISK4

    SQL> select GROUP_NUMBER,DISK_NUMBER,STATE,TOTAL_MB,FREE_MB ,NAME from v$asm_disk;

    SQL> select STATE,TOTAL_MB,FREE_MB ,NAME,FAILGROUP from v$asm_disk;

    STATE TOTAL_MB FREE_MB NAME FAILGROUP
    -------- ---------- ---------- ------------------------------ ------------------------------
    NORMAL 2047 0
    NORMAL 2047 0
    NORMAL 2047 1128 ASMDISK1 FG1
    NORMAL 2047 1127 ASMDISK2 FG1
    NORMAL 2047 1128 ASMDISK3 FG2
    NORMAL 2047 1127 ASMDISK4 FG2

    6 rows selected.


    SQL> select name, type, total_mb, free_mb, required_mirror_free_mb,usable_file_mb from v$asm_diskgroup;

    NAME TYPE TOTAL_MB FREE_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB
    ------------------------------ ------ ---------- ---------- ----------------------- --------------
    DATA NORMAL 8188 4510 *2047* 1231

    Now still the largest failure could occur is that any failgroup fails,failgroup comprises of 2 2gb disk so its agian 4gb.
    But here its showing 2gb here i am confused.
    Maybe my concept is wrong please help ...please dont mind anything that i am again n again asking questions.
  • 5. Re: confusion about required_mirror_free_mb in asm
    Sebastian Solbach (DBA Community) Guru
    Currently Being Moderated
    Hi Muhammad,

    pls forget what I have written before. That was incorrect.

    Here is the correct explanation: If you look at Note 798458.1 Incorrect Usable_file_mb Calculation and the documentation you will find the following:

    "REQUIRED_MIRROR_FREE_MB indicates the amount of space that must be available in a disk group to restore full redundancy after the worst failure that can be tolerated by the disk group."

    Unfortunately the worst case in your 2 scenarios is defferent (hence the diffent number):

    If you have 6 disks in 3 FGs then the worst failure scenario is
    - failure of a whole failgroup (ca. 1.420 + 1.420 GB) +
    - failure of one disks in either of the 2 surviving diskgroups (another ca. 1.2 GB, which is the result after re-mirroring of the survining DGs- you can see that is 1127 which is the number after you deletet one FG).

    In your other case, where you only have 4 disks in 2 FG then the worst failure scenario (to still maintain normal redundancy) is failure of 1 disk:
    - Failure of one disk with maximum containing data of 2047 (since this is the size of the disk).

    Hope that clarifies it.

    Sebastian

    Edited by: ssolbach on Sep 6, 2010 1:15 AM
  • 6. Re: confusion about required_mirror_free_mb in asm
    Muhammad.Usman Newbie
    Currently Being Moderated
    thank you for giving me time...really appreciated...

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points