Versions Compared

Key

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

...

Object (table and indexes) spent much of its In Oracle time on Buffer wait. This usually occurs as a result of one of the following:

  • Contention on a table or index buffer in Insert statements (Buffer Busy wait).
  • Lack of free buffer space when trying to load blocks from a disk (Free Buffer wait).

Table 12-85 Buffer Wait Contention

 

...

Description
What to do

...

next

Perform the following options:

...

  • Examine buffer wait over time, in the Activity Tab.

...

  • Examine buffer wait substate events in the Statistics tab.
Advice

...

Perform one of the following options:

  • If Buffer Busy wait is the more dominant Oracle event, consider doing the following:

    ...

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

    ...

      • Increase the PCTFREE parameter or decrease the block size for the table, to distribute data among many blocks and reduce the chances for contention.
    • If Free Buffer wait is the more dominant Oracle event, consider doing the following:

      ...

        • Tune access to the object, to reduce the number of blocks fetched.

      ...

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

      ...

        • slaves.

      Anchor
      ObjectorRowLockContention
      ObjectorRowLockContention
      Object or Row Lock Contention

      ...

      Table 12-86 Object Or Row Lock Contention

       

      ...

      Description
      What to do

      ...

      nextExamine the statement in the Activity tab.
      Advice

      ...

      To reduce the lock wait for the object, perform one of the following:

      ...

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

      ...

      • Try to identify the locking statement in the Activity tab using smaller time frames that match the lock periods. Focus on the locked table and associated statements. The DML statements (and update queries) that are NOT waiting for locks should be the immediate suspects.

      Anchor
      BottleneckinRACWait
      BottleneckinRACWait
      Bottleneck in RAC Wait

      ...

      Table 12-87 Bottleneck in RAC Wait

       

      ...

      Description
      What to do

      ...

      nextExamine the statement in the Activity tab.
      Advice

      ...

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

      Anchor
      ManyChainedRows
      ManyChainedRows
      Many Chained Rows

      ...

      Table 12-88 Many Chained Rows

       

      ...

      Description
      What to do

      ...

      nextExamine table dictionary information.
      Advice

      ...

      The object is suffering because it is accessing an object that suffers from chained rows. Chained rows are typically caused by the Insert operation. To solve the problem, perform one of the following:

      ...

      • Increase the PCTFREE parameter (can be by alter or move table).

      ...

      • Reorganize table (export/import or manually reorganize table).

      ...

      • Move table to tablespace with higher block size.

      Anchor
      StatisticsNotUpdatedonObject
      StatisticsNotUpdatedonObject
      Statistics Not Updated on Object

      ...

      Table 12-89 Statistics Not Updated on Object

       

      ...

      Description
      What to do

      ...

      nextExamine the dictionary details of the object in the Details section. Look at the Read/Write Operation Tab to quantify the magnitude of the block change.
      Advice

      ...

      To reduce potential access type problems resulting from statistics that are not up-to-date, consider analyzing the table and checking it periodically.

      Anchor
      ChangesDetectedinObjectStructure
      ChangesDetectedinObjectStructure
      Changes Detected in Object Structure

      ...