eG Monitoring
 

Measures reported by OraCurReqTest

Data blocks requested from the Global Cache are of two types: current and consistent-read (CR) blocks. When you update data in the database, Oracle Database must locate the most recent version of the data block that contains the data, which is called the current block. If you perform a query, only data committed before the query began is visible to the query. Data blocks that were changed after the start of the query are reconstructed from data in the undo segments, and the reconstructed data is made available to the query in the form of a consistent-read block.

Whenever a session requests for a current block, Oracle first checks whether the block is present in the local cache. If not, it looks for the same in the remote cache. If the block is available in the remote cache,it pins the block in the exclusive mode, flushes it from the cache, and sends it across over the interconnect. The time that elapses between when a current block is requested and when the session receives it should be tracked continuously, so that global cache block access latencies (if any) are detected proactively and resolved promptly. Use the OraCurReqTest to perform this tracking.

This test, at configured intervals, monitors requests for current blocks and reports how long it took for the requests to be serviced by the buffer caches. This sheds light on request processing delays (if any).

The measures made by this test are as follows:

Measurement Description Measurement Unit Interpretation
Avg_time Indicates the time taken to service requests for current blocks. CentiSecs Ideally the value of this measure should be low.

A high value for this measure is indicative of high latencies while accessing the global cache. This can be caused by any of the following:

  • A high number of requests caused by SQL statements that are not tuned.
  • A large number of processes in the queue waiting for CPU, or scheduling delays.
  • Slow, busy, or faulty interconnects. In these cases, check your network connection for dropped packets, retransmittals, or cyclic redundancy check (CRC) errors.

When global cache requests cause a performance problem, optimizing SQL plans and the schema to improve the rate at which data blocks are located in the local buffer cache, and minimizing I/O is a successful strategy for performance tuning.