Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> soft parses of recursive (system) statements
We've been fighting soft parses for the past 3-4 weeks (during high
load we execute up to 4000 queries per second)
So far we got the 'parse to execute' ration down to ~15% from about
40%.
Whenever I look at trace files of sessions, sorted by prscnt, i see
that the majority (well, lots) of internal statements are 'recursive'
and always softparsed.
Is there are anything I can do to reduce soft parses?
Is there are anything I can do to reduce recursive calls?
Thanks
e.g.:
select a.default_cpu_cost, a.default_io_cost
from
association$ a where a.obj# = :1 and a.property = :2 call count cpu elapsed disk query currentrows
association$ a where a.obj# = :1 and a.property = :2 call count cpu elapsed disk query currentrows
0
select
name,intcol#,segcol#,type#,length,nvl(precision#,0),decode(type#,2,
nvl(scale,-127/*MAXSB1MINAL*/),178,scale,179,scale,180,scale,181,scale,182,
scale,183,scale,231,scale,0),null$,fixedstorage,nvl(deflength,0),default$,
rowid,col#,property, charsetid,charsetform,spare1,spare2
from
col$ where obj#=:1 order by intcol#
call count cpu elapsed disk query current
rows
------- ------ -------- ---------- ---------- ---------- ----------
select o.owner#,o.name,o.namespace,o.remoteowner,o.linkname,o.subname,
o.dataobj#,o.flags
from
obj$ o where o.obj#=:1
call count cpu elapsed disk query current
rows
------- ------ -------- ---------- ---------- ---------- ----------