Oracle Internals
JulianDyke.com

Welcome

Seminars

Consultancy

Calendar

Presentations

Diagnostics

Internals

References

Acknowledgements

Dumps

System State

A system state dump contains the process state for every process.

Every state object for every process is dumped.

A state object represents the state of a database resource including

  • processes
  • sessions
  • enqueues (locks)
  • buffers

State objects are held in the SGA

A system state dump does not represent a snapshot of the instance because the database is not frozen for the duration of the dump. The start point of the dump will be earlier than the end point.

Oracle recommends the use of system state dumps to diagnose

  • hanging databases
  • slow databases
  • database errors
  • waiting processes
  • blocking processes
  • resource contention

To dump the system state use

    ALTER SESSION SET EVENTS 
    'immediate trace name systemstate level level';

For example

    ALTER SESSION SET EVENTS 'immediate trace name systemstate level 10';

The following ORADEBUG command has the same effect

    ORADEBUG DUMP SYSTEMSTATE level

A system state dump can be triggered by an error, for example the following init.ora parameter

    event = "60 trace name systemstate level 10"

will generate a systemstate dump whenever a deadlock is detected (ORA-00060)

The amount of library cache dump output for state object dumps can be limited using event 10065