Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I have added disk into the RAC system by the following way:

I have disk /dev/sdh1.

  1. Marked it as an ASM disk:

--On node 1

oracleasm createdisk DISK7 '/dev/sdh1';

--On node 2

oracleasm createdisk DISK7 '/dev/sdh1';

--On node 1

alter system set asm_diskstring='ORCL:*';
alter diskgroup data01 add disk 'ORCL:DISK7' name DISK7;

It showed the following error:

ORA-15032: not all alterations performed
ORA-15033: disk 'ORCL:DISK7' belongs to diskgroup "DATA01"

Then tried to drop it

alter diskgroup data01 drop disk DISK7;

ORA-15032: not all alterations performed
ORA-15054: disk "DISK7" does not exist in diskgroup "DATA01"

I don't understand why was these errors occurring :(

So I added disk by force:

ALTER DISKGROUP DATA01 add DISk 'ORCL:DISK7' name DISK7 force;

It was added and Oracle tried to make a rebalance.

After that I run dropping disk command:

ALTER DISKGROUP DATA01 drop disk DISK7;

Again tried to rebalance and when the used space reached 0.01GB it hangged.

select operation,state,power,sofar,est_work,est_rate,est_minutes from v$asm_operation;

OPERA STAT      POWER      SOFAR   EST_WORK   EST_RATE EST_MINUTES
----- ---- ---------- ---------- ---------- ---------- -----------
REBAL RUN           1       2063       2089       2199           0

Where to check what happens, why hanged and how to solve?

-----------------------------EDIT--------------------------------

I have re-added other disks successfully by the following way:

--On node1 deleted disk

1. oracleasm deletedisk DISK10

--On node2 scanned disks

1. oracleasm scandisks

--On node1 added, scanned and listed disk

1. oracleasm createdisk DISK10 /dev/sdh4
2. oracleasm scandisks
3. oracleasm listdisks

--On node2 just scanned and listed disks

1. oracleasm scandisks
2. oracleasm listdisks

--On node1 connect to the ASM and add disk to the diskgroup

$ . oraenv
+ASM1
sqlplus / as sysasm
alter diskgroup DATA01 add disk 'ORCL:DISK10';

And DISK10 was successfully added and Oracle started to rebalance. Now, when I query the asm_operation view shows the following:

    SQL> set linesize 200
    SQL> select * from v$asm_operation

GROUP_NUMBER OPERA STAT POWER  ACTUAL SOFAR EST_WORK EST_RATE EST_MINUTES ERROR_CODE
------------ ----- ---- ------ ------ ----- -------- -------- ----------- ----------
           1 REBAL WAIT 10

What my dropping is waiting for? Maybe for the added disk to finish rebalance , yes?

-------------------------------------EDIT2--------------------

As I have found the drop is waiting for the rebalance operation after disks are added.

On node 1 v$asm_operation shows that the operation is waiting and on node2 v$asm_operation shows the following:

select operation , state,sofar,est_work,est_minutes from v$asm_operation;

OPERA STAT      SOFAR   EST_WORK EST_MINUTES
----- ---- ---------- ---------- -----------
REBAL RUN     1538448    2702315         102

After this jobs finishes, I will wait for a while if dropping operation will also be finished, and then will write you again question on an answer :)


I've checked v$asm_operation and it is empty. So the dropping finished :) after 6 hours.(in my case it was 6 hours and it depends)

share|improve this question
1  
You're supposed to do "oracleasm scandisks" on the 2nd node, not recreate. Also, your disk string doesn't look right. Shouldn't it be something like '/dev/oracleasm/disks/*' ? –  Phil Jan 16 at 11:08
1  
Do ocrcheck and crsctl query css votedisk from ASM instance. Maybe you have OCR or votedisk on that disk. –  Mindaugas Riauba Jan 16 at 12:11
1  
Votedisk - no. OCR backups are being done automatically ocrconfig -showbackup. Of course you can always do ocrconfig -manualbackup. –  Mindaugas Riauba Jan 16 at 13:43
1  
backup00.ocr is the most recent. You can copy it to another locatation every 4 hours. –  Mindaugas Riauba Jan 16 at 17:14
1  
To Phil: If he's using ASMLib, the proper value for asm_diskstring is 'ORCL:*'. If you use '/dev/oracleasm/disks/*', then you're not actually using the ASMLib codepath. –  Mark J. Bobak Jan 17 at 22:15

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.