Every version of STATSPACK includes a list of idle events. This list is used when generating STATSPACK reports to eliminate idle events from the Top Five Timed Events section

STATSPACK idle events are specified in $ORACLE_HOME/rdbms/admin/spctab.sql

Idle events are recorded in the PERFSTAT.STATS$IDLE_EVENT table which has the following column:

Column NameData Type

In several releases the list of idle events is incomplete. This generally occurs where new idle wait events have been added in that release. If STATSPACK is reporting unexpectedly high values for wait events then check the following table to determine if these events were subsequently defined as idle.

The following table shows the idle events in each version of Oracle from 8.1 to 10.2

AQ Proxy Cleanup WaitYesYes    
ASM background timerYes     
class slave waitYes     
client messageYesYesYesYesYesYes
DIAG idle waitYes     
dispatcher timerYesYesYesYesYesYes
EMON idle waitYes     
gcs for actionYesYesYes   
gcs remote messageYesYesYes   
ges remote messageYesYesYes   
i/o slave waitYesYesYesYes  
jobq slave waitYesYesYesYes  
KSV master waitYes     
LNS ASYNC archive logYes     
LNS ASYNC dest activationYes     
LNS ASYNC end of logYes     
lock manager wait for remote messageYesYesYesYesYesYes
LogMiner: client waiting for transactionYes     
LogMiner: slave waiting for activate messageYes     
LogMiner: wakeup event for builderYes     
LogMiner: wakeup event for preparerYes     
LogMiner: wakeup event for readerYes     
master waitYes     
null eventYesYesYesYes  
Null eventYesYesYesYesYesYes
parallel query dequeueYesYesYesYesYesYes
pipe getYesYesYesYesYesYes
pmon timerYesYesYesYesYesYes
PX Deq Credit: need bufferYesYes    
PX Deq Credit: send blkdYesYes    
PX Deq: Execute ReplyYesYes    
PX Deq: Execution MsgYesYesYes   
PX Deq: Par Recov ExecuteYesYes    
PX Deq: Signal ACKYesYes    
PX Deq: Table Q NormalYesYesYes   
PX Deq: Table Q SampleYesYes    
PX Deque waitYesYes    
PX Idle WaitYesYesYesYesYesYes
queue messagesYesYesYes   
Queue Monitor Shutdown WaitYesYes    
Queue Monitor Slave WaitYesYes    
Queue Monitor WaitYesYes    
rdbms ipc messageYesYesYesYesYesYes
slave waitYesYesYesYes  
smon timerYesYesYesYesYesYes
SQL*Net message from clientYesYesYesYesYesYes
SQL*Net message to clientYesYesYesYesYesYes
SQL*Net more data from clientYesYesYesYesYesYes
STREAMS apply coord waiting for slave messageYesYes    
STREAMS apply slave idle waitYesYes    
STREAMS apply slave waiting for coord messageYesYes    
Streams AQ: deallocate messages from Streams PoolYes     
Streams AQ: delete acknowledged messagesYes     
Streams AQ: qmn coordinator idle waitYes     
Streams AQ: qmn slave idle waitYes     
Streams AQ: RAC qmn coordinator idle waitYes     
Streams AQ: waiting for messages in the queueYes     
Streams AQ: waiting for time management or cleanup tasksYes     
STREAMS capture process filter callback wait for rulesetYesYes    
STREAMS fetch slave waiting for txnsYesYes    
Streams fetch slave: waiting for txnsYes     
STREAMS waiting for subscribers to catch upYesYes    
virtual circuit statusYesYesYesYesYesYes
wait for activate messageYesYes    
wait for unread message on broadcast channelYesYes    
wakeup event for builderYesYes    
wakeup event for preparerYesYes    
wakeup event for readerYesYes    
wakeup time managerYesYesYesYesYes 

If a wait event is not defined as being idle in a specific release, you can optionally add the event to the STATS$IDLE_EVENT table. For example the queue messages wait event is not defined as being idle in Oracle 8.1.7. This will cause STATSPACK reports to show queue messages in the Top Five Timed Events. The event can be added to STATS$IDLE_EVENT using :

INSERT INTO perfstat.stats$idle_event VALUES ('queue messages');