"PX Deq: Signal ACK" Reference Note
This is a reference note for the wait event "PX Deq: Signal ACK" which includes the following subsections:- Brief definition
- Individual wait details (eg: For waits seen in <>)
- Systemwide wait details (eg: For waits seen in <>)
- Reducing waits / wait times
Definition:
- Versions:8.1 - 9.2 Documentation:None
- Waiting Process:QC
- The QC sends control messages to the slaves. The slaves have to send back acknowledge receipt. The QC waits to get this acknowledge receipt and this is the wait time for this event.
This is the same as the "Wait for slaves to ACK - Query Coord" wait event in Oracle 8.0.
Individual Waits:
Parameters:
- P1 = sleeptime/senderid
- P2 = passes
- P3 = not used
- sleeptime/senderid
You can decode the senderid with following SQL block
set SERVEROUTPUT on
If you get no rows back than p1 is a sleeptime and we are not waiting for any particular process.
undef p1
declare
inst varchar(20);
sender varchar(20);
begin
select bitand(&&p1, 16711680) - 65535 as SNDRINST,
decode(bitand(&&p1, 65535),65535, 'QC', 'P'||to_char(bitand(&&p1, 65535),'fm000') ) as SNDR
into inst , sender
from dual
where bitand(&&p1, 268435456) = 268435456;
dbms_output.put_line('Instance = '||inst);
dbms_output.put_line('Sender = '||sender );
end;
/
As example senderid/sleeptime = 268501004. Than the script will give
Instance = 1
Sender = P012
- passes
The number of times Oracle has waited for this event.
Wait Time:
This idle wait. QC is waiting that he gets a acknowledge back from a slave.
Systemwide Waits:
There is no general advice to reduce the waitime for this event.
Reducing Waits / Wait times:
There is no general advice to reduce the waitime for this event.
Related:
Parallel Query Wait Events Note:191103.1