I *think* the difference that dba_rollback_segs is a static view, while
v$rollstat is dynamic.

So the static view shows the segments as ONLINE, which they were, even
though they were also full

The dynamic view shows what is happening at that moment in time, which
is that the segments were FULL.

It's an explanation, not a great one, but an explanation.


--- "Weaver, Walt" <[EMAIL PROTECTED]> wrote:
> Okay, so today one of our QA databases suddenly started spewing out
> ora-1552
> errors. Turned out all of the rollback segments had a status of FULL.
> The
> problem was quickly fixed by taking the rollback segments offline,
> then back
> online. The reason why the rollback segments all became FULL is
> another
> story.
> 
> Anyway, before the problem was fixed we queried both
> dba_rollback_segs and
> v$rollstat to get the status of the rollback segments. v$rollstat
> returned
> FULL, but dba_rollback_segs returned ONLINE.
> 
> I thought this was interesting (I'm easily amused) so I dug up the
> DDL for
> the two views (shown below). The two views appear to get their
> information
> from two different places, and both use DECODEs to make the status
> meaningful. But, there's no DECODE value for FULL in
> dba_rollback_segs. In
> fact, the status values for the two can be quite different.
> 
> Why are they different? This bothers me. Steve Orr is off fishing
> today so
> he's not here to provide a rational explanation.
> 
> Is anyone else bothered by this? Or, should I just laugh it off, pick
> up the
> shattered pieces of my life, and soldier on?
> 
> I've also posted this on the appropriate (I think) Metalink forum.
> 
> Thanks,
> --Walt Weaver
>   Bozeman, Montana
> 
> 
> 
> ====================================
> create or replace view DBA_ROLLBACK_SEGS
>     (SEGMENT_NAME, OWNER, TABLESPACE_NAME, SEGMENT_ID, FILE_ID,
> BLOCK_ID,
>      INITIAL_EXTENT, NEXT_EXTENT,
>      MIN_EXTENTS, MAX_EXTENTS, PCT_INCREASE,
>      STATUS, INSTANCE_NUM, RELATIVE_FNO)
> as
> select un.name, decode(un.user#,1,'PUBLIC','SYS'),
>        ts.name, un.us#, f.file#, un.block#,
>        s.iniexts * ts.blocksize,
>        decode(bitand(ts.flags, 3), 1, to_number(NULL),
>                                       s.extsize * ts.blocksize),
>        s.minexts, s.maxexts,
>        decode(bitand(ts.flags, 3), 1, to_number(NULL),
>                                       s.extpct),
>        decode(un.status$, 2, 'OFFLINE', 3, 'ONLINE',
>                           4, 'UNDEFINED', 5, 'NEEDS RECOVERY',
>                           6, 'PARTLY AVAILABLE', 'UNDEFINED'),
>        decode(un.inst#, 0, NULL, un.inst#), un.file#
> from sys.undo$ un, sys.seg$ s, sys.ts$ ts, sys.file$ f
> where un.status$ != 1
>   and un.ts# = s.ts#
>   and un.file# = s.file#
>   and un.block# = s.block#
>   and s.type# = 1
>   and s.ts# = ts.ts#
>   and un.ts# = f.ts#
>   and un.file# = f.relfile#
> ===================================
> GV$ROLLSTAT
> select
>
inst_id,kturdusn,kturdext,kturdsiz,kturdwrt,kturdnax,kturdget,kturdwat,
> d
> ecode(kturdopt, -1,to_number(null), kturdopt),
> kturdhwm,kturdnsh,kturdnwp,kturdn
> ex, kturdash,kturdaae, decode(kturdflg, 0,'ONLINE', 2,'PENDING
> OFFLINE',
> 3,'OFFL
> INE',         4, 'FULL', 'UNKNOWN'), kturdcex, kturdcbk from x$kturd
> where
> kturd
> siz!=0 and kturdflg != 3
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> -- 
> Author: Weaver, Walt
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
> San Diego, California        -- Public Internet access / Mailing
> Lists
> --------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).


__________________________________________________
Do You Yahoo!?
Yahoo! Health - Feel better, live better
http://health.yahoo.com
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Rachel Carmichael
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to