ORA-15054 ASM Disk "DATA_Â0014" Contains Non ASCII Character (Doc ID 2178585.1)

Last updated on SEPTEMBER 06, 2016

Applies to:

Oracle Database - Standard Edition - Version 11.2.0.2 and later
Information in this document applies to any platform.

Symptoms

The ASM disk added with Non-ASCII character into DATA diskgroup.

SQL> alter diskgroup data add disk '/oracleasm/data_15/data15' name DATA_°014 rebalance power 11        --------> special character (xC2)
NOTE: Assigning number (1,15) to disk (/oracleasm/data_15/data15)
NOTE: requesting all-instance membership refresh for group=1
NOTE: initializing header on grp 1 disk DATA_°014
NOTE: requesting all-instance disk validation for group=1
Thu May 19 12:57:32 2016
NOTE: skipping rediscovery for group 1/0x7b536cc2 (DATA) on local instance.
NOTE: requesting all-instance disk validation for group=1
NOTE: skipping rediscovery for group 1/0x7b536cc2 (DATA) on local instance.
NOTE: initiating PST update: grp = 1
Thu May 19 12:57:38 2016
GMON updating group 1 at 23 for pid 71, osid 13988
NOTE: PST update grp = 1 completed successfully
NOTE: membership refresh pending for group 1/0x7b536cc2 (DATA)
GMON querying group 1 at 24 for pid 18, osid 7249
NOTE: cache opening disk 15 of grp 1: DATA_°014 path:/oracleasm/data_15/data15
Thu May 19 12:57:44 2016
NOTE: Attempting voting file refresh on diskgroup DATA
GMON querying group 1 at 25 for pid 18, osid 7249
SUCCESS: refreshed membership for 1/0x7b536cc2 (DATA)
Thu May 19 12:57:44 2016
SUCCESS: alter diskgroup data add disk '/oracleasm/data_15/data15' name DATA_°014 rebalance power 11    

 The disks information:

SQL> select 'alter diskgroup data drop disk '''||name||''' rebalance power 11' from v$asm_disk where GROUP_NUMBER = 2;

'ALTERDISKGROUPDATADROPDISK'''||NAME||'''REBALANCEPOWER11'
--------------------------------------------------------------------------------
alter diskgroup data drop disk 'DATA08' rebalance power 11
alter diskgroup data drop disk 'DATA03' rebalance power 11
alter diskgroup data drop disk 'DATA02' rebalance power 11
alter diskgroup data drop disk 'DATA_▒0014' rebalance power 11
alter diskgroup data drop disk 'DATA14' rebalance power 11
alter diskgroup data drop disk 'DATA13' rebalance power 11
alter diskgroup data drop disk 'DATA15' rebalance power 11
alter diskgroup data drop disk 'DATA10' rebalance power 11
alter diskgroup data drop disk 'DATA05' rebalance power 11
alter diskgroup data drop disk 'DATA17' rebalance power 11
alter diskgroup data drop disk 'DATA07' rebalance power 11

 

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

PATH
-------------------------------------------------------------------------------------------------------------------------
NAME HEADER_STATU
------------------------------ ------------
/oracleasm/data08/data08
DATA08 MEMBER

/oracleasm/data03/data03
DATA03 MEMBER

/oracleasm/data02/data02
DATA02 MEMBER

/oracleasm/data_15/data15
DATA_▒0014 MEMBER

/oracleasm/data14/data14
DATA14 MEMBER

 

SQL>select GRPNUM_KFDSK, NUMBER_KFDSK, STATE_KFDSK, ASMNAME_KFDSK, PATH_KFDSK from x$KFDSK;

GRPNUM_KFDSK NUMBER_KFDSK STATE_KFDSK ASMNAME_KFDSK PATH_KFDSK
------------ ------------ ----------- ------------------------------ --------------------------------------------------
0 0 2 /oracleasm/redo_01/redo01
0 1 2 /oracleasm/redo_02/redo02
0 2 2 /oracleasm/flash_01/flash01
0 3 2 /oracleasm/flash_02/flash02
0 4 2 /oracleasm/flash_03/flash03
0 5 2 /oracleasm/indx_01/indx01
0 6 2 /oracleasm/indx_03/indx03
0 7 2 /oracleasm/indx_02/indx02
0 9 2 /oracleasm/data_06/data06
0 10 2 /oracleasm/data_04/data04
0 11 2 /oracleasm/data_16/data16
0 12 2 /oracleasm/data_09/data09
0 13 2 /oracleasm/data_08/data08
0 14 2 /oracleasm/data_10/data10
0 15 2 /oracleasm/data_05/data05
0 16 2 /oracleasm/data_11/data11
0 17 2 /oracleasm/data_07/data07
0 18 2 /oracleasm/data_03/data03
0 19 2 /oracleasm/data_02/data02
0 20 2 /oracleasm/data_12/data12
0 21 2 /oracleasm/data_01/data01
0 22 2 /oracleasm/data_13/data13
0 23 2 /oracleasm/data_14/data14
2 0 2 DATA17 /oracleasm/data17/data17
2 15 2 DATA_¦0014 /oracleasm/data_15/data15 

[oracle@srvracnd01 ~]$ kfed read /oracleasm/data_15/data15

kfbh.endian: 1 ; 0x000: 0x01
kfbh.hard: 130 ; 0x001: 0x82
kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD
kfbh.datfmt: 1 ; 0x003: 0x01
kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0
kfbh.block.obj: 2147483663 ; 0x008: TYPE=0x8 NUMB=0xf
kfbh.check: 663400601 ; 0x00c: 0x278ab099
kfbh.fcn.base: 0 ; 0x010: 0x00000000
kfbh.fcn.wrap: 0 ; 0x014: 0x00000000
kfbh.spare1: 0 ; 0x018: 0x00000000
kfbh.spare2: 0 ; 0x01c: 0x00000000
kfdhdb.driver.provstr: ORCLDISK ; 0x000: length=8
kfdhdb.driver.reserved[0]: 0 ; 0x008: 0x00000000
kfdhdb.driver.reserved[1]: 0 ; 0x00c: 0x00000000
kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000
kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000
kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000
kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000
kfdhdb.compat: 186646528 ; 0x020: 0x0b200000
kfdhdb.dsknum: 15 ; 0x024: 0x000f
kfdhdb.grptyp: 1 ; 0x026: KFDGTP_EXTERNAL
kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER
kfdhdb.dskname: DATA_▒0014 ; 0x028: length=10
kfdhdb.grpname: DATA ; 0x048: length=4
kfdhdb.fgname: DATA_▒0014 ; 0x068: length=10

 


DISKGROUP PATH Total Used %Usd ST Header FAILGROUP STATE DiskName MOUNT_S
---------- ------------------------------ -------- -------- ----- --- --------------- ----------- ---------- --------------- -------
DATA /oracleasm/data_15/data15 102400 47305 46 ONL MEMBER DATA_0014 NORMAL DATA_0014 CACHED

 

SQL> select dump(name) from v$asm_disk where name like '%0014%';

DUMP(NAME)
--------------------------------------------------------------------------------
Typ=1 Len=10: 68,65,84,65,95,194,48,48,49,52

 

  

Following errors reported while dropping the disk from DATA diskgroup :

 

SQL> alter diskgroup data drop disk 'data_0014' rebalance power 11;
alter diskgroup data drop disk 'data_0014' rebalance power 11
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15054: disk "DATA_0014" does not exist in diskgroup "DATA"

(OR)

SQL> alter diskgroup data drop disk 'DATA_°014' rebalance power 11;
alter diskgroup data drop disk 'DATA_°014' rebalance power 11
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15054: disk "DATA_°014" does not exist in diskgroup "DATA"

 

SQL> alter diskgroup data drop disk '"DATA_▒0014"' rebalance power 11;
alter diskgroup data drop disk '"DATA_▒0014"' rebalance power 11
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15054: disk ""DATA_▒0014"" does not exist in diskgroup "DATA"

(OR)

SQL> alter diskgroup data drop disk 'DATA_Â0014' rebalance power 11;
alter diskgroup data drop disk 'DATA_Â0014' rebalance power 11
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15054: disk "DATA_Â0014" does not exist in diskgroup "DATA"

(OR)

SQL> alter diskgroup data drop disk 'DATA_0xc20014' rebalance power 11;
alter diskgroup data drop disk 'DATA_0xc20014' rebalance power 11
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15054: disk "DATA_0XC20014" does not exist in diskgroup "DATA"

 

If AL32UTF8 characters not set,Non-ASCII characters should be expressed with 2 bytes, like this:

SQL> select * from v$nls_parameters where parameter like '%CHARACTERSET%';

PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_CHARACTERSET
US7ASCII

NLS_NCHAR_CHARACTERSET
AL16UTF16

SQL> select dump('DATA_Â0014') from dual;

DUMP('DATA_Â0014')
-------------------------------------------------
Typ=96 Len=11: 68,65,84,65,95,195,130,48,48,49,52

 

Note: 195,130 is 0xc3,0x82 which is what my Linux terminal outputs when I have encoding set to UTF-8:

$ echo  | hexdump -C

00000000 c3 82 0a |...|
00000003

Changing encoding to ISO8859-15 shows the 0xc2 aka 194:

$ echo  | hexdump -C
00000000 c2 0a |..|
00000002

 

Cause

Sign In with your My Oracle Support account

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

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms