Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: INSERT...SELECT pegs CPU, but is waiting on scattered read?
> -----Original Message-----
> From: oracle-l-bounce_at_freelists.org
> Hey all,
>=20
>=20
One situation I have run into (several times, actually) which mimics =
your
description (others will list the additional data which would be =
helpful) is
where, due to poorly chosen init.ora parameters, the Optimizer is doing =
a
hash join, which in this case is a Big Mistake. While trying to form =
the
hash table in memory, and doing the hashing in memory, the cpu's burn.
When it has to read the child table from disk, you get some I/O. Setting
ALTER SESSION SET OPTIMIZER_INDEX_CACHING=3D100 fixed it. (leaving it
at 100 slowed down other queries, where the hash join was essential).
To test you must use tkprof. We found that even when we had hints added
to get an explain plan output giving a nested loops join, the hash join =
was
used during actual execution.
-- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------Received on Thu Apr 29 2004 - 11:49:13 CDT
![]() |
![]() |