An undo header is the segment header for an rbs. I believe you may have to increase the # rbs. Plz confirm this with someone. Also, run this script and post the output here:
-
SELECT name, waits, gets, waits/gets "Ratio"
FROM v$rollstat a, v$rollname b
WHERE a.usn = b.usn;
Check out your rollback work (v$rollstat/rollanme join using USN & see for extents in dba_rollback_segs) if things are not bright, increase number of rollback segs either small or large but do analysis before you'd create 'em
I have read on the metalink site for oracle that if a non zero value existed for 'undo header ' under the class column this means that there is a contention for rollback segment header blocks. Please refer Note: 69464.1
And my values for the undo header is very high. see below
select class, count
2 from v$waitstat
3 where class in ('system undo header', 'system undo block',
4 'undo header', 'undo block' ) ;
CLASS COUNT
------------------ ----------
system undo header 0
system undo block 0
undo header 62579
undo block 2
What is ur database block size.
what are the values for consistent gets and db block gets.
what is the current and max value for transactions in v$resource_limit.
how many write,get and waits per rollback segment.
What is the size of ur rollback segments.
Problem seems to be the number of transactions hitting single rollback segment, if transactions are high , then u need to have more rollback segments available .
Bookmarks