| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Re: why aren't ORA-1555 errors MORE frequent?
Richard Kuhler <noone_at_nowhere.com> wrote in
news:U5gC9.15580$%k2.4376213_at_twister.socal.rr.com:
> I was reading Oracle's NOTE 40689.1 about "delayed block cleanout" (also
> available in the asktom.oracle.com article "snapshot too old error"). I
> feel like I'm missing something because I'm left wondering why ORA-1555
> errors aren't far MORE frequent than they are. For instance, what keeps
> ORA-1555 happening in this simple scenario ...
>
>
> 1. A process updates blocks in a table, commits and terminates (delayed
> block cleanout is used)
>
> 2. The blocks in the table are not read again for a long enough time
> that the pertinent Rollback Segment Headers are overwritten
>
> 3. A new process queries those blocks
WRONG!
When a new process starts a query, Oracle ensure the process
will be presented with a "read consistant view" of the data
in the DB at the time the query starts. This new process will
just read the updated block from the table.
>
>
> Since the Rollback Segment Header entries that the modified blocks point
> to have been overwritten, there's no way for the query to know whether
> the changes were committed before or after the query started, right? So
> Oracle must return ORA-1555, right?
>
>
> Thanks,
> Richard Kuhler
>
>
Received on Mon Nov 18 2002 - 20:04:15 CST
![]() |
![]() |