Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table 12-50 Heavy I/O Due to Other Access

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Click the Locate icon to find the relevant step in the execution plan.

...

  • Select the findings type to investigate the objects used and their structure in the Objects tab.

...

  • Select the Activity tab, locate the statement associated with objects, and drill to the object (table/index) consumption for the statement in the Activity tab.

Findings refer to the whole statement - not to a specific execution plan. If a step doesn't exist in the selected execution plan (unless this is the result of an index overhead), switch to another plan and locate the relevant step.

Anchor
StatementStateRowLock
StatementStateRowLock
Statement State Row Lock

Much of the statement I/O is spent on waiting for a lock on the table specified in the Object column.

Table 12-51 Statement State Row Lock

 

...

Description
What to do

...

nextSelect the findings type to examine lock for the statement in the Activity tab.
Advice

...

To reduce the lock wait for the table, consider the following solutions:

...

  • Check to see if the lock appears in the Current tab. If so, examine the lock chain to identify the statement holding the lock.

...

  • Try to identify the locking statement in the Activity tab using the narrow time frames matching the lock periods. Now focus on the locked table and associated statements. The DML statement (and update queries) that are not waiting for locks are the immediate suspects.

Findings refer to the whole statement - not to a specific execution plan. If a step doesn't exist in the selected execution plan (unless this is the result of an index overhead), switch to another plan and locate the relevant step.

Anchor
BufferWaitContention
BufferWaitContention
Buffer Wait Contention

Your statement has spent much of its In Oracle time on Buffer Wait. This usually occurs because one of two possible scenarios:

  • Contention on a table buffer in Insert statements (Buffer Busy Wait), or
  • Lack of free buffers when trying to load blocks from a disk (Free Buffer Wait)

Table 12-52 Buffer Wait Contention

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Select the findings type to identify the tables suffering from Buffer Wait in the Objects tab, or

...

  • Examine Buffer Wait sub-state events in the Statistics tab.

...

Advice

When Buffer Busy Wait is the more dominant Oracle event, consider the following options:

...

  • Increase the free lists for the table to reduce the chances for contention.

...

  • Increase the PCTFREE parameter or decrease the block size for the table to spread the data among many blocks and reduce the chances for contention.

When Free Buffer Wait is the more dominant Oracle event, consider the following options:

...

  • Tune the object's access, so as to reduce the number of blocks fetched.

...

  • If this is a global instance problem, increase the number of DBWR processes or I/O slaves.

Anchor
RedoLogActivity
RedoLogActivity
Redo Log Activity

Your statement has spent much of its In Oracle time waiting for Redo Log Wait.

Table 12-53 Redo Log Activity

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Examine Redo Log Wait overtime I/O consumption for the statement in the Activity tab, or

...

  • Examine Redo Log Wait relevant statistics in the Statistics tab.
Advice

...

To reduce Redo Log Wait, consider the following solution:

...

  • Check Dashboard findings and overtime graphs to see the overall Redo Log activity for the instance.

Anchor
UndoActivity
UndoActivity
Undo Activity

Your statement has spent much of its In Oracle time waiting for undo.

Table 12-54 Undo Activity

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Examine Undo Wait overtime I/O consumption for the statement in the Activity tab, or

...

  • Examine Undo Wait relevant statistics in the Statistics tab.

...

Advice

To reduce Undo Wait time, consider the following solutions:

...

  • Check Dashboard findings and overtime graphs to see the overall undo activity for the instance.

Anchor
RACWait
RACWait
RAC Wait

Your instance has spent much of its In Oracle time waiting for a RAC activity to complete on the object specified in the Object column.

Table 12-55 RAC Wait

 

...

Description
What to do

...

nextSelect the findings type to see the instances consuming object RAC Wait in the Activity tab.
Advice

...

The object is suffering from a RAC Wait because several instances are using it simultaneously. To solve the problem, identify all programs currently accessing the object and try to avoid accessing it concurrently.

Anchor
BindVariablesWereCollected
BindVariablesWereCollected
Bind Variables Were Collected

Bind sets were collected for the statement.

Table 12-56 Bind Variables Were Collected

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Select the findings type to examine the bind values in the Bind Variables tab.

...

  • Use the Estimate Cost button to check whether the Oracle optimizer identified a better execution plan for a provided set of binds.
Advice

...

If the Oracle optimizer finds a better execution plan, try to evaluate one plan in relation to another for a set of captured binds and try to stabilize it by using outlines.

Anchor
MoreThanOneRealPlanWasDetected
MoreThanOneRealPlanWasDetected
More Than One Real Plan Was Detected

More than one real plan was collected for the statement during the selected time frame.

Table 12-57 More Than One Real Plan Was Detected

 

...

Description
What to do

...

nextSelect the findings type and use the All Plans tab to examine the different captured execution plans and their real resource consumption.
Advice

...

Try to identify the source for the different execution plans.

To resolve the multiple plans, consider the following solutions:

...

  • Go to the History tab to see whether there were any changes (such as schema or statistics changes), or

...

  • Go to the Activity tab to see whether it is being run by different programs.

Anchor
CostsHaveChangedOvertheLastMonth
CostsHaveChangedOvertheLastMonth
Costs Have Changed Over the Last Month

The cost for the statement has changed over the last month.

Table 12-58 Costs Have Changed Over the Last Month

 

...

Description
What to do

...

nextSelect the findings type and use the History tab to examine the different costs caught for the statement.
Advice

...

Try to identify the source for the different execution plan costs.

Go to the History tab to check whether there were any changes (such as schema or statistics changes).

Anchor
FrequentlyExecutedStatement
FrequentlyExecutedStatement
Frequently Executed Statement

Much of the statements In Oracle time is spent on CPU usage, even though the average In Oracle time is low (indicating executions run many times).

Table 12-59 Frequently Executed Statement

 

...

Description
What to do

...

next

Perform one of the following options:

...

  • Launch to the Activity tab to examine the scalability of the statement.

...

  • Examine the activity of the program enabling the statement.
Advice

...

Try to determine if the large number of executions is valid or if it is derived from redundant executions as a result of inefficient program design (e.g. if the statement is enabled in an inefficient loop).

Anchor
TheAverageExecutionUsesCPUHeavily
TheAverageExecutionUsesCPUHeavily
The Average Execution Uses CPU Heavily

Much of the stats In Oracle time is spent on CPU usage, and the average In Oracle time is high.

...