PX Deq Credit: send blkd
Date: Fri, 29 Aug 2008 16:51:36 +0200
Message-ID: <48B80CF8.1080708@usn-it.de>
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-lReceived on Fri Aug 29 2008 - 09:51:36 CDT