Sanjay Mishra wrote:
> Hi everybody
> I have seen several time ORA-1555
error in few of the Prod Database. SOme of them have very big UNDO tablespaces. All are 9i Databases. What are the other option that need to be checked for such issue beside increasing the space as some of the database has UNDO tablespace around 50-150G
> Is it good to create new undo tablespace and make it default in such scenario and later on dropped the old. Do somebody has set of UNDO checking query that can be ran at some particular point to really see if that big UNDO are really been used so that it can be resized.
> I am thankful for any suggestion for monitoring such ORA-1555
as well as query to check UNDO segment space.
1) There are a number of good descriptions of this on the internet, but
the one's which come easiest to mind are to search asktom.oracle.com on ORA-1555
2) To add to what has already been said, an easy way to get this error
is to have a long running query going in the midst of a lot of short
transactions, all of which commit and update the rows you are querying.
3) Even more fun is to have a complicated Data Warehouse summarization
routine, which runs for several hours, which commits across an open
cursor (without closing the cursor).
Many find it counter-intuitive (I certainly did at first), but frequent
commits are the best way to get an ORA-1555
, and using a minimum number
of commits the best way to avoid it (assuming you have the space).
Remember that in 9i UNDO_RETENTION is a strong plea rather than an
absolute command; if Oracle runs out of undo space it will reuse the
space as if the parameter were not set.
Phil Singer | psinger1 at chartermi dot net
PhD, OCP, and All Around Good Guy | Do the Obvious to Reply