PX Deq Credit: send blkd

Hi list,

I've got massive wait events named "PX Deq Credit: send blkd". As far as
I know, that's a parallel query issue, a producer is faster then the
consumer. But thats a textbook explanantion I simply don't understand.
The obvious option, to increase PARALLEL_EXECUTION_MESSAGE_SIZE, does
not fit since it's set to the (x86_64) architecture's maximum, 64k.

The system is rather capable, and CPU load is less than 30%, disk IO
around 100MB/s, the underlying ASM diskgroups have been successfully
tested with nearly 1GB/s.

The query in question is a huge MERGE statement with APPEND PARALLEL
hints, a little abstracted form here:

MERGE /* APPEND PARALLEL ("TABLE_A") */
INTO "WA_FILBU_BEARB"
USING (SELECT /*+ PARALLEL ("TABLE_B") PARALLEL ("TABLE_B") PARALLEL
("TABLE_B") PARALLEL ("TABLE_B") PARALLEL ("TABLE_B")*/
<fields>
from (SELECT /*+ PARALLEL ("TABLE_B") PARALLEL ("TABLE_B") PARALLEL
("TABLE_B") PARALLEL ("TABLE_B") PARALLEL ("TABLE_B")
<other fields>
from <likewise select again>))

It comes from a warehouse builder application by oracle, and I have no
clue if there is another SQL solution, and my question does not touch
this aspect: I've got no chance to change this at the moment, and if, I
am no SQL developer.

But I'd like to know for improving my personal knowledge and for further
issues, how I can track down the wait event (PX Deq Credit: send blkd)
to a root cause, and maybe, avoid it.

Any chance? :)
Thanks in Advance!
Martin Klier
-- 
Usn's IT Blog for Linux, Oracle, Asterisk
http://www.usn-it.de

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


Other related posts: