Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Serializable transactions get rolled back while there are no othertransactions running?!

Re: Serializable transactions get rolled back while there are no othertransactions running?!

From: Joe Weinstein <joeNOSPAM_at_bea.com>
Date: Sun, 20 Jun 2004 21:59:28 -0700
Message-ID: <40D66B30.8060803@bea.com>

Jonathan Lewis wrote:

> Apparently, this one will be fixed in Oracle 11
> (yes, really, that wasn't a joke).
>
>
> Could you clarify what environment or feature
> you are thinking of when you comment on the
> "per-table configured memory " and the need
> to configure more of it.

inittrans

>
>
> Regarding:
>

>>Any data that is read by a serializable tx can be altered and committed by

>
> another
>
>>tx before the first one completes, and if the first tx rereads the changed
>>data it will still see the old values, even though the real data has been
>>changed.

>
> I think that's what most people would expect of serializable.

What most people expect is that when their query reads data, that it is the real data. Many people assume that the data they read will not/must not change until the end of their transaction. Ultimately oracle implemented select FOR UPDATE to provide this functionality for those that demamded it.

> I believe the intent of serializability is that the result of running
> the transactions concurrently should be equivalent to at least
> one order for running the transaction serially.

true.

> So a transaction
> should never see changes made by any other transaction or there
> will never be a serial order that could get the same result.

True, but 'should never see' is not what some people want or expect. They want 'should never happen'.
Joe
>
>
Received on Sun Jun 20 2004 - 23:59:28 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US