Barry Lind wrote:
> Oracle's implementation is a shared cache for all plans. This was
> introduced in Oracle 6 or 7 (I don't remember which anymore). The net
> effect was that in general there was a significant performance
> improvement with the shared cache. However poorly written apps can now
> bring the Oracle database to its knees because of the locking issues
> associated with the shared cache. For example if the most frequently
> run sql statements are coded poorly (i.e. they don't use bind variables,
> eg. 'select bar from foo where foobar = $1' vs. 'select bar from foo
> where foobar = || somevalue' (where somevalue is likely to be
> different on every call)) the shared cache doesn't help and its overhead
> becomes significant.
This is very interesting. We have always been concerned that shared
cache invalidation could cause more of a performance problem that the
shared cache gives benefit, and it sounds like you are saying exactly
that.
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026