RE: Delayed block cleanout and changing automatic undo tablespace

  • From: Tim Onions <tim.onions@xxxxxxxxxxxxxxxxxx>
  • To: "'oracle-l@xxxxxxxxxxxxx'" <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 20 Jul 2004 15:05:33 +0100

Jonathan

Interesting thoughts indeed. The database is failsafed and it was "shutdown"
via a failover so it is possible that the shutdown was not clean. I will
look into that. I have no intention of dropping the tablespace until such
time as I am totally satisfied this issue is fixed - I don't have the luxury
of taking cold backups - until then I'll simply shrink datafile when space
becomes an issue. I came to the conclusion that it was a delayed block
cleanout issue myself based on previous experience but I have not absolute
proof that this is really the case.

Thanks

T¬

-----Original Message-----
From: Jonathan Lewis [mailto:jonathan@xxxxxxxxxxxxxxxxxx] 
Sent: 20 July 2004 14:51
To: oracle-l@xxxxxxxxxxxxx
Subject: Re: Delayed block cleanout and changing automatic undo tablespace



That's very odd.

Since you restarted the database to switch undo tablespaces, any code that
attempts to do delayed block cleanout should be able to determine that the
startup SCN for the database is an adequate upper bound commit, and
therefore not NEED to go back any further.***

The fact that Oracle tries to go back further than necessary
is arguably an error - unless someone can think of a reason
why it actually IS necessary.  It's probably okay to drop the tablespace -
but I think I'd only do that after taking a cold backup because if there's
one error in this area, there may be other worse errors waiting to happen.


*** Footnote: I am assuming that your shutdown was a
clean shutdown, otherwise the old undo tablespace could
be needed for completing a "rollback;" rather than a cleanout.


Regards

Jonathan Lewis

http://www.jlcomp.demon.co.uk/faq/ind_faq.html
The Co-operative Oracle Users' FAQ

http://www.jlcomp.demon.co.uk/seminar.html
Optimising Oracle Seminar - schedule updated July 14th



----- Original Message ----- 
From: "Tim Onions" <tim.onions@xxxxxxxxxxxxxxxxxx>
To: <oracle-l@xxxxxxxxxxxxx>
Sent: Tuesday, July 20, 2004 10:52 AM
Subject: Delayed block cleanout and changing automatic undo tablespace


: Dear All
:
: Windows 2003 (full patched)/Oracle9.2.0.5 EE
:
: After a recent migration to 9i where data was copied from the 8i database
: rather than the migration utility used I changed the automatic undo
: tablespace from a large one (coz I was migrating a LOT of data) to a
smaller
: one (normal transactions are quite small). The DB was restarted in between
: times to ensure the new UNDO tablesapce became active.
:
: I want to drop the old large undo tablespace but cannot as when I offlined
: it in preparation I started to get "data file cannot be read at this time"
: errors in the application, where the datafiles in question were associated
: with the old large undo tablesapce. I am pretty sure this is due to
delayed
: block cleanout with "rollback" in the old large tablespace still being
: required for this period.
:
: When using traditional rollback you could offline the rollbacks segments
and
: I believe this would force a cleanout (from what I have read). I can see
no
: way of offlining auto undo or forcing a cleanout. AskTom says "it happens
: over time" as the blocks that need cleaning are accessed. I have done FTS
: queries on all tables in the application and will, if I have to, run
queries
: that access all index blocks. However, I need to be sure data in the old
: large undo tablespace is not still needed before I drop it or even risk
: taking it offline again (the application errors were not nice!).
:
: So eventually the questions:
: - how can I tell if cleanout is still required?
: or how can I tell if undo in the old large tablespace (the tablespaces
that
: is no longer being actively used by auto undo) is still required (for
: cleanout)
: Or how can I force cleanout aka offlining a rollback segment in 8i
(without
: having to run FTS and index scans on everything)
:
: DBA_SEGMENTS shows 10 auto undo segments in the old large tablespace which
: may be a clue but there is no info there to help me (they were there
beofre
: I ran the FTS queries and are still there now). They have been there for
: some time and show no inclination to go.
:
: Many thanks in anticipation.
:


----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx put
'unsubscribe' in the subject line.
--
Archives are at //www.freelists.org/archives/oracle-l/
FAQ is at //www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at //www.freelists.org/archives/oracle-l/
FAQ is at //www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------

Other related posts: