Presentation Title:Cursors, child cursors, and more child cursors
Learn about Oracle library cache internals focusing on cursors and child cursors. Multiple child cursors is essential for many applications but when hundreds or thousands are created massive performance problems can occur. We'll cover how multiple child cursors occurs, how to detect if it's a problem, and what to do about it.
The topics include:
- What is a cursor?
- Parsing... How bad is bad?
- Hashing and hash structures
- Parent and child relationships
- Find a suitable child cursor
- Creating a parent cursor
- Creating a child cursor
- Problems with too many child cursors
- Detailing and creating a bind mismatch situation
- How to limit child cursors, including patch #10187168 in 188.8.131.52
- Serialization control via mutexes (e.g., cursor: pin s)
- Wait time and the OS administrator
- Determining the average and typical wait time numerically and visually
Some of the views we look at is v$sql, v$sql_shared_cursor, v$system_event.