Tuesday, May 12, 2009

Concurrency Testing

One complaint I've heard of a number times is how code gets tested 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.

Will put together demos of other examples.

Here is the first example of commiting every loop in a 100 row insert loop verses commiting once:


No comments:

Post a Comment