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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Will ROWID change during DB Runing??

Re: Will ROWID change during DB Runing??

From: Grant Zhou <grantzhou_at_gmail.com>
Date: Tue, 4 Jan 2005 10:41:38 +0800
Message-ID: <crcvld$lu5@netnews.proxy.lucent.com>

"HansF" <News.Hans_at_telus.net> wrote in message news:pan.2005.01.04.02.15.43.104959_at_telus.net...

> Can I assume your 'processes' and 'threads' are C or C++.

I am using C.

> 1) Since you referenced the Oracle Server 7 docco - is the RowId
> declared using the Oracle 7 definition? There is a change in size
> between Oracle7 and Oracle8.
>

The rowid is saved to an unsigned char array[19]; The value is selected with rowidtochar function.

> 2) Is there any cross-talk between the threads in the processes? One way
> to check - does the same problem happen when you throttle back to 1
> process & 1 thread? Then, if not, check multiple processes but 1 tread
> each.

no cross talk.

> Your description is pretty vague, but it reminds me of some systems
> with commits inside loops which then attempt to read the changed record
> based on rowid after the commit. If this comes anywhere close, I strongly
> encourage getting a copy of "Expert One-On-One Oracle" as you potentially
> have a _lot_ of inefficiencies, many of which are described in the book.
> (Is this a port from another RDBMS?)

:) Okay, I am reading the Expert One-On-One Oracle.

> Also - a billing process? Sounds mission-critical ... hopefully you
> will be moving up to a fully supported version of Oracle soon <g>
You are right!
The program caused 3 user of 80K user charge error. I have doubts about the rowid usage.

> /Hans
Received on Mon Jan 03 2005 - 20:41:38 CST

Original text of this message

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