« 上一篇 | 下一篇»

分布事务执行计划问题

songhefei | 26 04, 2008, 12:34 | oracle 数据库 | (682 Reads)

local: Oracle9.2.0.1

remote :Oracle9.2.0.6


SQL> SET AUTOTRACE TRACEONLY
SQL> insert into T_ZYTJ_LS
2 (swjg, jls, je, nsrs, lb)
3 select A.zsjg_dm swjg, count(*) jls, sum(a.sj_je) je, '02', '01'
4 from A@NM A ,B@NM B
5 where a.xg_sj >= to_date('20080422', 'YYYYMMDD')
6 and a.xh_xh =B.XH_XH
7 AND B.xhxt_sj >= to_date('20080422', 'YYYYMMDD')
8 and a.zsxm_dm not in ('66', '68', '97', '65')
9 and a.zf_bj = '0'
10 group by A.zsjg_dm;

已创建454行。


Execution Plan
----------------------------------------------------------
0 INSERT STATEMENT Optimizer=CHOOSE (Cost=9 Card=1 Bytes=75)
1 0 SORT (GROUP BY) (Cost=9 Card=1 Bytes=75)
2 1 NESTED LOOPS (Cost=7 Card=1 Bytes=75)
3 2 REMOTE* (Cost=5 Card=1 Bytes=53) NM.US.ORACLE .COM

4 2 REMOTE* NM.US.ORACLE.COM

3 SERIAL_FROM_REMOTE SELECT "ZSXM_DM","SJ_JE","XH_XH","ZSJG_DM","
ZF_BJ","XG_SJ" FROM A WHERE

4 SERIAL_FROM_REMOTE SELECT "XH_XH","XHXT_SJ" FROM B "B" WHERE :1="XH_XH" AND "XH

Statistics
----------------------------------------------------------
7 recursive calls
33 db block gets
6 consistent gets
3 physical reads
17864 redo size
611 bytes sent via SQL*Net to client
918 bytes received via SQL*Net from client
3 SQL*Net roundtrips to/from client
2 sorts (memory)
0 sorts (disk)
454 rows processed

执行计划竟然是在local 端执行nested loop ,Why??

难道是ORACLE9201的bug?

Trackback URL: http://blog.itpub.net//trackback.php?id=460598
Comments