Users are getting the following alarm:
Latch waits are 18.7% of non-idle wait time
(averaged over 30 seconds).
Latch waits are the waits that occur when a session needs to acquire a latch that is held by another session. Latches are simple, low-level serialization mechanisms to protect shared SGA data structures and shared code segments from simultaneous session access. They are similar in purpose to locks: Latches protect internal memory structures while locks protect data structures. They are designed to be very quickly acquired and freed.
The implementation of latches is operating system dependent, particularly in regard to whether a process will wait for a latch and for how long.
For example, latches protect the list of users currently accessing the database and protect the data structures describing the blocks in the buffer cache. A server or background process acquires a latch for a very short time while manipulating or looking at one of these structures.
Rarely is latch contention tunable by reconfiguring the instance. Rather, latch contention usually is resolved through application changes. Latch waits can be eliminated by either tuning the instance or the application.
Tuning latch contention is dependent on the type of latch wait encountered.