🔗 7) Concurrence, locks & contention
Objectif : identifier et éliminer les freins de concurrence : enqueues (verrous), latches/mutex (contention interne), hot blocks (segments chauds), deadlocks, et patterns applicatifs à risque.
Enqueues & verrous (TX/TM…)
Row locks, table locks, ITL, blocage chaîne, symptômes et triage.
Latches & mutex : contention “interne”
Library cache, parsing, shared pool, hot mutex, causes & remèdes.
Hot blocks : index/table “chauds”
Right-growing index, sequences, insert hotspots, buffer busy waits, solutions.
Deadlocks : comprendre & corriger
ORA-00060, patterns “update inversé”, logs, reproduction, fix applicatif.
Patterns applicatifs “à risque”
Commit trop fréquent, transactions longues, SELECT…FOR UPDATE, batch mal designé.
Runbook contention (industrialiser)
Incident → identifier bloqueur → objet → SQL_ID → fix → validation → rollback.
Diagrammes (Mermaid-ready)
Chaîne blocking, deadlock cycle, et flow d’investigation contention.
Commandes & vues (locks/latches)
V$SESSION, V$LOCK, DBA_BLOCKERS/WAITERS, ASH, V$LATCH, V$MUTEX_*, etc.
