An event can be defined as a particular function, or task, that the Oracle kernel performs on behalf of the user session or its own background process. And tasks such as reading and writing data blocks to and from data files, waiting for latch acquisitions before accessing or manipulating data in the memory, inter process postings and communications, and so on are known as database events, and they have specific names.
Every session that is connected to an Oracle instance needs resources to perform its tasks. A resource may be a data buffer, a latch, an enqueue (lock), a pin, or a database object. Whenever a session has to wait for something, the wait time is tracked and charged to the event that is associated with that wait. And events that are associated with all such waits are known as wait events.
And wait events can be categorized as Foreground, Background, Idle, and Non-Idle events.
Some of the examples of wait events includes , but not limited to:
- direct path read
- direct path write
- db file sequential read
- db file scattered read events
- latch free
- control file parallel write
- write complete waits
- free buffer waits
- SQL*Net more data to/from client
- buffer busy waits
- enqueue
- log file parallel write