impdp时不报错地hang住(二)
---------------------- ------------------- -------- ----------------------------------------------------------------
721 wait for unread message on bro 已等1秒 WAITING ACTIVE Idle
adcast channel
993 wait for unread message on bro 已等1秒 WAITING ACTIVE Idle
adcast channel 网上搜了下这个等待,结合我的Impdp,好像也没啥线索。 从后台attach这个job登陆
Worker 1 Status:
Process Name: DW00
State: EXECUTING
Object Schema: GBSMIS
Object Name: IDX_GM_ACCOUNT_MAIN_LCD
Object Type: TABLE_EXPORT/TABLE/INDEX/INDEX
Completed Objects: 1
Worker Parallelism: 1
显示的确是在建索引IDX_GM_ACCOUNT_MAIN_LCD,因为是DDL语句,没建完我也不能从数据库层面看他是否存在以及是否在增长。 此时一切看来正常,难道我还得在等一晚上? 看到process name是DW00,再登陆到数据库中。
SQL> select * from v$process where program like '%DW00%';
ADDR PID SPID PNAME USERNAME SERIAL# TERMINAL PROGRAM TRACEID TRACEFILE BACKGROUND LATCHWAIT LATCHSPIN PGA_USED_MEM PGA_ALLOC_MEM PGA_FREEABLE_MEM PGA_MAX_MEM
---------------- ---------- ------------------------ ----- -------------------- ---------- ------------------------------ ------------------------------------------------ -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ---------- ---------------- ---------------- ------------ ------------- ---------------- -----------
000000075C5AA808 63 16224 DW00 otzj11g 47 UNKNOWN oracle@cnsh281003 (DW00) /paic/stg/oracle/11g/app/oracle/diag/rdbms/molapstg/molapstg/trace/molapstg_dw00 1 65156820 1187400836 1120534528 1187400836 这个DW00并不是DBWR进程。 DBW0 是dbwr进程,写datafile用的. DW0是datapump worker进程,给 impdp/expdp用的. 通过spid16224可以得到会话sid是1009 SQL> @sidbyspid 16224 SID ----- 1009 SQL> 看看1009会话在等什么。
SQL> @waitbysid 1009
--V$SESSION_WAIT displays the current or last wait for each session.
--@sid 19,25,232
SID EVENT 等待时间 STATE STATUS WAIT_CLASS
----- ------------------------------ ------------------------------ ------------------- -------- ----------------------------------------------------------------
1009 statement suspended, wait erro 已等0秒 WAITING ACTIVE Configuration
r to be cleared SQL>
statement suspended, wait erro to be cleared等待,此时百度一搜,惜分飞的文章映入眼帘,顿时春暖花开。
是因为表空间不足,所以hang住了。此时看了下表空间,是足够的,是表空间所在的asm dg已经满了。
所以申请存储扩diskgroup,搞定。