RE: Untested Developer Code - lack of concurrency testing

  • From: "Herring Dave - dherri" <Dave.Herring@xxxxxxxxxx>
  • To: "kyle Hailey" <kylelf@xxxxxxxxx>, <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 12 May 2009 15:55:24 -0500

Got one from the DW side of the world.  I had a developer build a view
for an application that joined a 1/2 billion row table to a number of
small tables, one of which included a many-to-many join.  This failed in
a number of ways in production, mostly due to lack of temp space (400
GB+ per query), when multiple people hit it.  Needless to say that view
has been banned.  That was years ago and ever since DBAs attend all code
reviews.

David C. Herring  | DBA, Acxiom Automotive
 
630-944-4762 office | 630-430-5988 cell | 630-944-4989 fax
1501 Opus Pl | Downers Grove, IL, 60515 | U.S.A. | www.acxiom.com
 


-----Original Message-----
From: kyle Hailey [mailto:kylelf@xxxxxxxxx] 
Sent: Tuesday, May 12, 2009 10:12 AM
To: oracle-l@xxxxxxxxxxxxx
Subject: Untested Developer Code - lack of concurrency testing

with one user and it runs fine and then gets put into production and
only to hit a huge performance snafu.   I'm putting together a demo on
this kind of situation and was
thinking of some examples. One example that came to mind is a Nesedt
Loops join that hammers the root node of an index. Might work fine for
one user, but when multiple users start running it, the query runs
into cache buffers chains latch issues with the high concurrency
access to the index's root block which might be resolved by doing a
hash join or moving the lookup table to a hash cluster for example.
Wondering if anyone else had good examples of developer code that
worked fine with one user and broke in the multi user production
environment.
X-archive-position: 17586
X-ecartis-version: Ecartis v1.0.0
Sender: oracle-l-bounce@xxxxxxxxxxxxx
Errors-to: oracle-l-bounce@xxxxxxxxxxxxx
X-original-sender: kylelf@xxxxxxxxx
Precedence: normal
Reply-to: kylelf@xxxxxxxxx
List-help: <mailto:ecartis@xxxxxxxxxxxxx?Subject=help>
List-unsubscribe: <oracle-l-request@xxxxxxxxxxxxx?Subject=unsubscribe>
List-software: Ecartis version 1.0.0
List-Id: oracle-l <oracle-l.freelists.org>
X-List-ID: oracle-l <oracle-l.freelists.org>
List-subscribe: <oracle-l-request@xxxxxxxxxxxxx?Subject=subscribe>
List-owner: <mailto:steve.adams@xxxxxxxxxxxx>
List-post: <mailto:oracle-l@xxxxxxxxxxxxx>
List-archive: <//www.freelists.org/archives/oracle-l>
X-list: oracle-l

Best
Kyle Hailey

http://oraclemonitor.com/
--
//www.freelists.org/webpage/oracle-l


***************************************************************************
The information contained in this communication is confidential, is
intended only for the use of the recipient named above, and may be legally
privileged.

If the reader of this message is not the intended recipient, you are
hereby notified that any dissemination, distribution or copying of this
communication is strictly prohibited.

If you have received this communication in error, please resend this
communication to the sender and delete the original message or any copy
of it from your computer system.

Thank You.
****************************************************************************

--
//www.freelists.org/webpage/oracle-l


Other related posts: