ORA-600(OCIKCallPush: deprecated)错误

今天用数据泵导出AWR数据时碰到了这个错误。

 

 

执行的操作如下:

SQL> @?/rdbms/admin/awrextr
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Disclaimer: This SQL/Plus script. should only be called under
the guidance of Oracle Support.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


~~~~~~~~~~~~~
AWR EXTRACT
~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~  This script. will extract the AWR data for a range of snapshots  ~
~  into a dump file.  The script. will prompt users for the         ~
~  following information:                                          ~
~     (1) database id                                              ~
~     (2) snapshot range to extract                                ~
~     (3) name of directory object                                 ~
~     (4) name of dump file                                        ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Databases in this Workload Repository schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   DB Id     DB Name      Host
------------ ------------ ------------
* 2400249746 CNDERPDB     p5a1
* 2400249746 CNDERPDB     p5b1

The default database id is the local one: '2400249746'.  To use this
database id, press to continue, otherwise enter an alternative.

Enter value for dbid:

Using 2400249746 for Database ID


Specify the number of days of snapshots to choose from
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entering the number of days (n) will result in the most recent
(n) days of snapshots being listed.  Pressing without
specifying a number lists all completed snapshots.


Enter value for num_days: 7

Listing the last 7 days of Completed Snapshots

DB Name        Snap Id    Snap Started
------------ --------- ------------------
CNDERPDB         48696 20 Apr 2011 00:00
                 48697 20 Apr 2011 01:00
                 48698 20 Apr 2011 02:00
                 48699 20 Apr 2011 03:00
                 48700 20 Apr 2011 04:00
.
.
.
                 48852 26 Apr 2011 12:00
                 48853 26 Apr 2011 13:00
                 48854 26 Apr 2011 14:00


Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 48703
Begin Snapshot Id specified: 48703

Enter value for end_snap: 48852
End   Snapshot Id specified: 48852


Specify the Directory Name
~~~~~~~~~~~~~~~~~~~~~~~~~~

Directory Name                 Directory Path
------------------------------ -------------------------------------------------
ADMIN_DIR                      /u01/db10g/md/admin
BACKUP_DIR                     /orabak/logicbackup
DATA_PUMP_DIR                  /u01/db10g/rdbms/log/
DB360                          /backup_tmp
ORACLE_OCM_CONFIG_DIR          /u01/db10g/ccr/state
WORK_DIR                       /u01/db10g/work

Choose a Directory Name from the above list (case-sensitive).

Enter value for directory_name: BACKUP_DIR

Using the dump directory: BACKUP_DIR

Specify the Name of the Extract Dump File
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The prefix for the default dump file name is awrdat_48703_48852.
To use this name, press to continue, otherwise enter
an alternative.

Enter value for file_name: awrdat_48703_48852

Using the dump file prefix: awrdat_48703_48852
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|  The AWR extract dump file will be located
|  in the following directory/file:
|   /orabak/logicbackup
|   awrdat_48703_48852.dmp
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|  *** AWR Extract Started ...
|
|  This operation will take a few moments. The
|  progress of the AWR extract operation can be
|  monitored in the following directory/file:
|   /orabak/logicbackup
|   awrdat_48703_48852.log
|
^Cbegin
*
ERROR at line 1:
ORA-06512: at "SYS.DBMS_SWRF_INTERNAL", line 1015
ORA-06512: at line 4

由于运行的过程中发现抽取的SNAPSHOT的值有点问题,于是打算中止当前的抽取,执行了CTRL+C试图取消这个操作,但是Oracle报错并非是ORA-1013错误,而是ORA-6512错误。

随后打算重新执行导出的操作,但是这次Oracle并没有提示输入DBIDSNAPSHOT的值以及DIRECTORY的名称,而是直接开始抽取的操作。

将操作中止后,出现了

WHERE (dbid, snap_id) IN (SELECT dbid, snap_id FROM SYS.WRM$_SNAPSHOT WHERE DBID = 2400249746 AND SNAP_ID >=
48703 AND SNAP_ID <= 48852 AND STATUS = 0 AND BL_MOVED = 1)
Added filter [WHERE DBID = 2400249746] for table WRH$_STAT_NAME
Added filter [WHERE DBID = 2400249746] for table WRH$_PARAMETER_NAME
Added filter [WHERE DBID = 2400249746] for table WRH$_EVENT_NAME
Added filter [WHERE DBID = 2400249746] for table WRH$_LATCH_NAME
.
.
.
Added filter [WHERE (dbid, snap_id) IN (SELECT dbid, snap_id FROM SYS.WRM$_SNAPSHOT WHERE DBID = 2400249746
AND SNAP_ID >= 48703 AND SNAP_ID <= 48852 AND STATUS = 0 AND BL_MOVED = 0)] for table
WRH$_ACTIVE_SESSION_HISTORY
Starting "SYS"."SYS_EXPORT_TABLE_02":
Estimate in progress using BLOCKS method...
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 3.015 GB
Processing object type TABLE_EXPORT/TABLE/TABLE
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type TABLE_EXPORT/TABLE/COMMENT
Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
. . exported "SYS"."WRH$_SQL_PLAN" 71.35 MB 249249 rows
. . exported "SYS"."WRH$_SQLTEXT" 25.05 MB 3913 rows
. . exported "SYS"."WRH$_WAITCLASSMETRIC_HISTORY" 1.361 MB 18948 rows
. . exported "SYS"."WRH$_ACTIVE_SESSION_HISTORY":"WRH$_ACTIVE_2400249746_48698" 5.382 MB 30349 rows
. . exported "SYS"."WRH$_ACTIVE_SESSION_HISTORY":"WRH$_ACTIVE_2400249746_48650" 17.58 KB 0 rows
.
.
.
. . exported "SYS"."WRH$_LATCH":"WRH$_LATCH_2400249746_48818" 1018. KB 18960 rows
. . exported "SYS"."WRH$_SEG_STAT_OBJ" 2.379 MB 25176 rows
Exception encountered in AWR_EXTRACT

而退出sqlplus后,重新登录再次运行awrextr.sql,命令成功结束。显然由于手工中止了操作,使得部分变量没有被清除,这是没有退出sqlplus再次运行awrextr.sql时,Oracle没有提示输入变量的原因。而且由于数据泵的特点,使用CTRL+C并不会结束数据泵的进程,而是使之转入后台,这也是为什么会有后面的输出。不过由于抽取AWR是封装在PL/SQL中的操作,所以可能在中止之后导致某些状态不正常,导致最后的EXPDP进程出现错误。

而随后检查alert发现,出现了文章标题中提到的ORA-600错误,错误信息为:

Tue Apr 26 14:40:37 BEIST 2011
The value (30) of MAXTRANS parameter ignored.
Tue Apr 26 14:40:40 BEIST 2011
ALTER SYSTEM SET service_names='cnderpdb.chinacdc.com','SYS$SYS.KUPC$C_1_20110426144037.CNDERPDB.CHINACDC.COM' SCOPE=MEMORY SID='cnderpdb1';
Tue Apr 26 14:40:40 BEIST 2011
ALTER SYSTEM SET service_names='SYS$SYS.KUPC$C_1_20110426144037.CNDERPDB.CHINACDC.COM','cnderpdb.chinacdc.com','SYS$SYS.KUPC$S_1_20110426144037.CNDERPDB.CHIN
ACDC.COM' SCOPE=MEMORY SID='cnderpdb1';
kupprdp: master process DM00 started with pid=525, OS id=447072
to execute - SYS.KUPM$MCP.MAIN('SYS_EXPORT_TABLE_01', 'SYS', 'KUPC$C_1_20110426144037', 'KUPC$S_1_20110426144037', 0);
kupprdp: worker process DW01 started with worker id=1, pid=531, OS id=803338
to execute - SYS.KUPW$WORKER.MAIN('SYS_EXPORT_TABLE_01', 'SYS');
Tue Apr 26 14:41:09 BEIST 2011
Memory Notification: Library Cache Object loaded into SGA
Heap size 10546K exceeds notification threshold (8192K)
Details in trace file /u01/admin/cnderpdb/bdump/cnderpdb1_dw01_803338.trc
KGL object name :SELECT /*+rule*/ SYS_XMLGEN(VALUE(KU$), XMLFORMAT.createFormat2('TABLE_T', '7')), KU$.OBJ_NUM ,KU$.ANC_OBJ.NAME ,KU$.ANC_OBJ.OWNER_NAME ,KU$
.ANC_OBJ.TYPE_NAME ,KU$.BASE_OBJ.NAME ,KU$.BASE_OBJ.OWNER_NAME ,KU$.BASE_OBJ.TYPE_NAME ,KU$.SPARE1 ,KU$.XMLSCHEMACOLS ,KU$.SCHEMA_OBJ.NAME ,KU$.SCHEMA_OBJ.NA
ME ,'TABLE' ,KU$.PROPERTY ,KU$.SCHEMA_OBJ.OWNER_NAME ,KU$.TS_NAME ,KU$.TRIGFLAG FROM SYS.KU$_FHTABLE_VIEW KU$ WHERE NOT (BITAND (KU$.PROPERTY,8192)=8192) AND
NOT BITAND(KU$.SCHEMA_OBJ.FLAGS,128)!=0 AND KU$.OBJ_NU
Tue Apr 26 14:42:37 BEIST 2011
Errors in file /u01/admin/cnderpdb/bdump/cnderpdb1_dw01_803338.trc:
ORA-00600: internal error code, arguments: [OCIKCallPush: deprecated], [], [], [], [], [], [], []
ORA-06502: PL/SQL: numeric or value error
ORA-31605: the following was returned from LpxXSLInitializeCtx in routine kuxslSetStyleSheet:
LPX-314: an internal failure occurred
ORA-19202: Error occurred in XML processing
ORA-39119: worker process interrupt for delete worker processes call by master process
Tue Apr 26 14:42:40 BEIST 2011
Trace dumping is performing id=[cdmp_20110426144240]

从上面的信息可以看出,事实上这个错误导致的原因是最后的ORA-39119: worker process interrupt for delete worker processes call by master process。有了前面的分析,这个ORA-600错误就可以忽略了。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-694146/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-694146/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值