Re: Multiple update problem

From: Igor Sereda <sereda_at_spb.runnet.ru>
Date: Thu, 21 May 1998 12:37:44 -0400
Message-ID: <35645858.8BD450EA_at_spb.runnet.ru>


Hi Mungo,

Surely blocking means waiting for the release of the lock. When you update primary key twice, then commit, only the last value will be the "real" value of the record. I believe this is a part of "transaction-based" rdbms ideology.

Hope this helps,
Igor

Mungo Henning wrote:
>
> Thanks for the reply Thomas, but I'm still curious...
>
> Thomas Kyte wrote:
> [multiple update scenario snipped]
> ?
> ? ?I'm thinking of the following (separate) scenarios: the past is to the
> ? ?left
> ? ?of the line, the future to the right:
> ? ?
> ? ? UserA:update UserB:insert UserA:commit UserB:commit
> ?
> ? If userA updates 10 to 90, UserB's insert will BLOCK on the unique index entry.
> When userA performs the update, the index will be modified. But I was
> under the impression that for read-consistency userB should not be
> aware that another user is amending the table until the amendments
> are committed? I'm quite willing to believe that it's my impression of
> Oracle that's wrong, but can you set me straight please?
>
> When you say "BLOCK" do you mean that the insert will be suspended
> pending the lock? What would happen if userA then altered the same
> record (whose value is now ninety) to eighty without committing - would
> the block be released?
>
> TIA
> Mungo Henning

-- 
Igor Sereda,
ITC, Russia
Received on Thu May 21 1998 - 18:37:44 CEST

Original text of this message