Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle error 1555 snapshot too old
BACKOUCHE wrote:
> =
> Try increasing your rollback's segment size....
> =
> Let me know if this helps
> Philippe Backouche
> philippe_at_arpege.imaginet.fr
> =
> Dave Wotton a écrit :
> =
> > Eric DUCHET wrote in message ...
> > >I 've got the Oracle message Snaptshot too old......
> > >
> > >Does anybody explain me why this message appears ?
> > >I commit my transaction every 1000 rows.
> > >I don't understand what's happening.
> >
> > See my web-page:
> >
> > http://home.clara.net/dwotton/dba/snapshot.htm
> >
> > You should find it explains everything :-)
Generally that seldom fixes the problem. The typical solution is to close=
and re-open the outer cursor every so often. Just as a rule of thumb I mostly do it after I've processed 1000 rows on the outer cursor, but I've=
seen times when that is too many rows. I just keep reducing the size unti=
l
I no longer get the errors.
If anyone is really interested in "why" this error is generated there is =
a
virtual plethora of information available from a variety of sources
starting with the oracle web site, but there are also others who have web=
pages where common oracle errors are discussed. However, if you are only interested in fixing the problem then just try the solution I've outlined=
above or create your own variation such as dumping all of the rowid's to =
a
text file and then processing them from the text file. Or, try doing it i=
n
a pro-c application and build an array of rowid'd is memory. Since the ma=
in
problem is with an outer and inner cursor, almost any approach which
doesn't use two simultaneous cursors will work.
Received on Tue Dec 07 1999 - 10:08:18 CST
![]() |
![]() |