Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 
 Home
 E-mail Us
 Oracle Articles
New Oracle Articles


 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog


 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Analysis
 Design
 Implementation
 Oracle Support


 SQL Tuning
 Security

 Oracle UNIX
 Oracle Linux
 Monitoring
 Remote s
upport
 Remote plans
 Remote
services
 Application Server

 Applications
 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S
upport  
 Development  

 Implementation


 Consulting Staff
 Consulting Prices
 Help Wanted!

 


 Oracle Posters
 Oracle Books

 Oracle Scripts
 Ion
 Excel-DB  

Don Burleson Blog 


 

 

 


 

 

 

 

 

Waits and Statistics for RAC Monitoring

Oracle RAC Cluster Tips by Burleson Consulting

This is an excerpt from the bestselling book Oracle Grid & Real Application Clusters.  To get immediate access to the code depot of working RAC scripts, buy it directly from the publisher and save more than 30%.


The DBA will be interested in the waits and statistics for tuning shown in Table 14.1.

Statistic or Wait

Description

Source

buffer busy global cache

 

A wait event that is signaled when a process waits for a block to be available because another process is already obtaining a resource for this block.

gv$system_event, gv$session_wait

 

buffer busy waits

 

A wait event that is signaled when a process cannot get a buffer due to another process using the buffer at that point in time.

gv$system_event, gv$session_wait

 

cache convert waits

 

A statistic showing the total number of waits for all up-convert operations, these are: global cache null to S, global cache null to X, and global cache S to X.

gv$sysstat

 

cache open waits

 

A statistic that shows the total number of waits for global cache open S and global cache open X.

gv$sysstat

 

consistent gets

 

The consistent gets statistic shows the number of buffers obtained in consistent read (CR) mode.

gv$sysstat

 

cr request retry

 

A statistic that quantifies when Oracle resubmits a consistent read request due to detecting that the holding instance is no longer available.

gv$sysstat

 

db block changes

 

The number of current buffers that where obtained in exclusive mode for DML.

gv$sysstat

 

db block gets

 

The number of current buffers that were obtained for a read.

gv$sysstat

 

DBWR cross-instance writes

 

These are also forced writes and show the number of writes that an instance had to perform to disk in order to make a previously exclusively held block available for another instance. Generally, DBWR cross-instance writes are eliminated due to Cache Fusion unless a value greater than 0 (zero) is set for the gc_files_to_locks parameter.

gv$sysstat

 

global cache bg acks

This wait event can only occur during the startup or shutdown of an instance as the LMS process completes its operations.

gv$system_event, gv$session_wait

 

global cache busy

This is a wait event that accumulates when a session has waits for an ongoing operation on the resource to complete.

gv$system_event, gv$session_wait

 

global cache cr cancel wait

This is a wait event that accumulates when a session waits for the completion of an AST for a canceled block access request. The canceling of the request is part of the Cache Fusion Write Protocol.

gv$system_event, gv$session_wait

 

global cache converts

This is a statistic that shows the resource converts for buffer cache blocks. Whenever GCS resources are converted from NULL to SHARED, NULL to EXCLUSIVE or SHARED to EXCLUSIVE this statistic is incremented.

gv$sysstat

 

global cache convert time

This statistics shows the accumulated time for global conversions on GCS resources for all sessions.

gv$sysstat

 

global cache convert timeouts

Whenever a resource operation times out this statistic is incremented.

gv$sysstat

 

global cache cr block flush time

 

This statistic shows the time waited for a log flush whenever a CR request is served. This is part of the serve time.

gv$sysstat

 

global cache cr blocks received

If a process requests a consistent read for a data block that is not in its local cache it has to send a request to another instance, this statistic is incremented once the buffer has been received.

gv$sysstat

 

global cache cr block receive time

This statistic records the accumulated round trip time for all requests for consistent read blocks.

gv$sysstat

 

global cache cr blocks served

This statistic shows the number of requests for a consistent read block served by LMS. This statistic is incremented by Oracle when the block is sent.

gv$sysstat

 

global cache cr block build time

This statistic shows the accumulated time that the LMS process needs to create a consistent read block on the holding instance

gv$sysstat

 

global cache cr block send time

This statistic shows the time needed by LMS to begin a send of a consistent read block. For send time, timing does not stop until send has completed. Only the time it takes to initiate the send is measured; the time elapsed before the block arrives at the requesting instance is not included.

gv$sysstat

 

global cache cr cancel wait

This is a wait event that happens when a session waits for a canceled CR request to complete its acquisition interrupt. The process of canceling the CR request is part of the Cache Fusion Write Protocol.

gv$system_event, gv$session_wait

 

global cache cr request

This is a wait event that happens because a process is made to wait for a pending CR request to complete. The process must wait for either shared access to a block to be granted before it can read the block from disk, or it waits for the LMS of the holding instance to send the block.

gv$system_event, gv$session_wait

 

global cache current block flush time

This is a statistic that shows the time it takes to flush the changes from a block to disk before the block can be shipped to the requesting instance.

gv$sysstat

 

global cache current block pin time

This is a statistic that shows the time it takes to pin a current block before shipping it to a requesting instance. The pinning of a block prevents further changes to the block while it is prepared to be shipped.

gv$sysstat

 

global cache current blocks received

This is a statistic that shows the number of current blocks received over the interconnect from the holding instance.

gv$sysstat

 

global cache current block receive time

 

This is a statistic that shows the current blocks accumulated round trip time for all requests.

gv$sysstat

 

global cache current block send time

This is a statistic that shows the time it takes to send the current block over the interconnect to the requesting instance.

gv$sysstat

 

global cache current blocks served

This is a statistic that shows the number of current blocks shipped over the interconnect to the requesting instance.

gv$sysstat

 

global cache freelist wait

This is a statistic that shows Oracle must wait after it detects that the local element free list is empty.

gv$sysstat

 

 

 

 

global cache freelist waits

This is a statistic that shows the number of times that the resource element free list was found empty by Oracle.

gv$sysstat

 

global cache gets

This is a statistic that shows the number of buffer gets that caused the opening of a new GCS resource.

gv$sysstat

 

global cache get time

This is a statistic that shows the accumulated time for all sessions that was needed to open a GCS resource for a local buffer.

gv$sysstat

 

global cache null to S

A wait event that occurs whenever a session has to wait for a resource conversion to complete.

gv$system_event, gv$session_wait

 

global cache null to X

This is a wait event that occurs whenever a session has to wait for this type of resource conversion to complete.

gv$system_event, gv$session_wait

 

global cache open S

This is a wait event that occurs when a session has to wait for receiving permission for shared access to the requested resource.

gv$system_event, gv$session_wait

 

global cache open X

This is a wait event that occurs when a session has to wait for receiving exclusive access to the requested resource.

gv$system_event, gv$session_wait

 

global cache S to X

This is a wait event that occurs whenever a session has to wait for this type of resource conversion to complete.

gv$system_event, gv$session_wait

 

global cache pending ast

This is a wait event that can occur when a process waits for an acquisition interrupt before Oracle closes a resource element.

gv$system_event, gv$session_wait

 

global cache pred cancel wait

 

This is a wait event that occurs when a session must wait for the acquisition interrupt to complete for a canceled predecessor read request. The canceling of a predecessor read request is a part of the Cache Fusion Write Protocol.

gv$system_event, gv$session_wait

 

global cache retry prepare

 

This is a wait event that occurs whenever Oracle cannot ignore or skip a failure to prepare a buffer for a consistent read or Cache Fusion request.

gv$system_event, gv$session_wait

 

global lock async converts

 

This is a statistic showing the number of resource converts from an incompatible mode.

 

gv$sysstat

 

global lock sync gets

 

This is a statistic showing the number of synchronous GCS resources that Oracle must open. These sync gets are usually for GES resources.  Library cache resources are one example.

gv$sysstat

 

global lock async gets

 

This is a statistic showing the number of Ansynchronous GES resources that Oracle must open. Normally, async gets include the number of global cache gets and are only used for GES resources.

gv$sysstat

 

global lock get time

 

This is a statistic that shows the accumulated open time for all GES resources.

gv$sysstat

 

global lock sync converts

 

This statistic shows the number of GES resources that Oracle converted from an incompatible mode. Usually sync converts occur for GES resources only.

gv$sysstat

global lock convert time

This is a statistic that shows the accumulated global lock sync converts and global lock async converts time.

gv$sysstat

 

lock buffers for read

This is a statistic that shows the number of NULL to SHARED up converts.

gv$sysstat

 

lock gets per transaction

This is a statistic that shows the number of global lock sync gets and global lock async gets per transaction.

gv$sysstat

 

lock converts per transaction

 

This is a statistic that shows the number of global local sync converts and global lock async converts per transaction.

gv$sysstat

 

messages flow controlled

This shows the number of messages that are intended to be sent directly but that were instead queued and delivered later by LMD/LMS.

gv$dml_misc

 

messages received

 

This statistics shows the number of messages received by the LMD process.

gv$dml_misc

 

messages sent directly

 

This statistic shows the number of messages sent directly by Oracle processes.

gv$dml_misc

 

messages sent indirectly

 

This statistics shows the number of explicitly queued messages.

gv$dml_misc

 

physical reads

 

This is a statistic that shows the total number of disk reads performed because a request for a data block could not be satisfied from a local cache.

gv$sysstat

 

physical writes

 

This statistics shows the number of write I/Os performed by the DBWNn processes. This number includes the number of DBWR cross instance writes (forced writes) in Oracle Database 10g when gc_files_to_locks is set. Setting gc_files_to_locks for a particular datafile will enable the use of the old ping protocol and will not leverage the Cache Fusion architecture.

gv$sysstat

 

remote instance undo block writes

 

This is a statistic that shows the number of undo blocks written to disk by DBWn due to a forced write.

gv$sysstat

 

remote instance undo header writes

 

This is a statistic that shows the number of rollback segment header blocks written to disk by DBWn due to a forced write.

gv$sysstat

 

Table 14.1: Waits and Statistics for RAC Monitoring from Oracle RAC Manual Glossary

Oracle has provided the racdiag.sql script that can help troubleshoot RAC slowdowns; however, it has limited applicability to RAC system tuning. It is suggested that STATSPACK be used, combined with the selects provided in this chapter for RAC tuning.

racdiag.sql is available at MOSC.oracle.com.

The class column in the gv$sysstat view indicates the type of statistic. Oracle RAC related statistics are in classes eight, 32, and 40.

 


This is an excerpt from the bestselling book Oracle Grid & Real Application Clusters, Rampant TechPress, by Mike Ault and Madhu Tumma.

You can buy it direct from the publisher for 30%-off and get instant access to the code depot of Oracle tuning scripts.

http://www.rampant-books.com/book_2004_1_10g_grid.htm


 

 
��  
 
 
Oracle Training at Sea
 
 
 
 
oracle dba poster
 

 
Follow us on Twitter 
 
Oracle performance tuning software 
 
Oracle Linux poster
 
 
 

 

Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


                    









Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


 

Copyright © 1996 -  2017

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.

Remote Emergency Support provided by Conversational