RE: Untested Developer Code - lack of concurrency testing

From: Herring Dave - dherri <Dave.Herring_at_acxiom.com>
Date: Tue, 12 May 2009 15:55:24 -0500
Message-ID: <7ED53A68952D3B4C9540B4EFA5C76E36062A4E8B_at_CWYMSX04.Corp.Acxiom.net>



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_at_gmail.com] Sent: Tuesday, May 12, 2009 10:12 AM
To: oracle-l_at_freelists.org
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_at_freelists.org Errors-to: oracle-l-bounce_at_freelists.org X-original-sender: kylelf_at_gmail.com
Precedence: normal
Reply-to: kylelf_at_gmail.com

List-help: <mailto:ecartis_at_freelists.org?Subject=help>
List-unsubscribe: <oracle-l-request_at_freelists.org?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_at_freelists.org?Subject=subscribe>
List-owner: <mailto:steve.adams_at_ixora.com.au>
List-post: <mailto:oracle-l_at_freelists.org>
List-archive: <http://www.freelists.org/archives/oracle-l>
X-list: oracle-l

Best
Kyle Hailey

http://oraclemonitor.com/
--

http://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.


--

http://www.freelists.org/webpage/oracle-l Received on Tue May 12 2009 - 15:55:24 CDT

Original text of this message