Annuler une requête en cours (pg_cancel_backend)
PostgreSQLSessionsCommande
SELECT pg_cancel_backend(12345);Ce que fait la commande
Annule la requête en cours d'exécution sur le PID donné ; la connexion reste ouverte.
Quand l'utiliser
Pour arrêter une requête longue sans couper la connexion.
Attention
Il n'annule qu'une requête active ; il ne ferme pas une session à l'état idle in transaction, ce qui exige pg_terminate_backend.
Voir aussi
- Terminer un backend (pg_terminate_backend)
- Afficher les requêtes actives et bloquantes
- Construire l'arbre de blocage (trouver le bloqueur racine)
- Examiner en détail les attentes de verrous par objet et mode de verrou (pg_locks)
- Trouver les transactions longues et 'idle in transaction'
- Terminer en masse, de façon contrôlée, les longues sessions 'idle in transaction'