gc buffer busy: Wait (RAC): Konkurrenz um einen Cache-Fusion-Block, der zwischen Instanzen übertragen wird
OracleWas bedeutet das?
In einer RAC-Umgebung wartet eine Session auf Zugriff auf einen globalen Block, der per Cache Fusion von/zu einer anderen Instanz übertragen wird oder von dieser Instanz belegt ist.
Ursache
Dieselben Hot Blocks werden zwischen RAC-Knoten geteilt (instanzübergreifender Hot Block), Interconnect-Latenz/-Engpass, knotenübergreifende Konkurrenz auf Indizes mit sequenziellen Schlüsseln oder ungleichmäßige Lastverteilung.
Lösung
Finde die betroffenen Segmente mit v$segment_statistics und GV$-Views. Prüfe Zustand und Latenz des Interconnects (privates, schnelles Netzwerk). Verwende Reverse Key oder Hash-Partitionierung für Hot Indexes. Verringere knotenübergreifende Konkurrenz um dieselben Blöcke, indem du die Last per Service auf die Knoten aufteilst.
Weitere Einträge zu dieser Datenbank
- db file sequential readWait: physischer Single-Block-Read, typisch bei Index- oder Tabellenzugriff
- db file scattered readWait: physischer Multi-Block-Read, typisch bei Full Table Scan oder Index Fast Full Scan
- buffer busy waitsWait: Konkurrenz um einen Buffer, den eine andere Session bereits liest oder ändert
- library cache lockWait: Konkurrenz um ein Library-Cache-Objekthandle (Parse-/DDL-Serialisierung)
- ORA-00604error occurred at recursive SQL level (Fehler auf rekursiver SQL-Ebene)
- ORA-01438value larger than specified precision allowed for this column (Wert größer als die für die Spalte erlaubte Precision)
- ORA-01400cannot insert NULL into (column) (NULL kann nicht in die Spalte eingefügt werden)