Laufende Abfrage abbrechen (pg_cancel_backend)
PostgreSQLSessionsBefehl
SELECT pg_cancel_backend(12345);Was es tut
Bricht die gerade auf der angegebenen PID laufende Abfrage ab; die Verbindung bleibt offen.
Wann einsetzen
Um eine lang laufende Abfrage zu stoppen, ohne die Verbindung zu trennen.
Vorsicht
Bricht nur eine aktive Abfrage ab; eine Session im Zustand idle in transaction wird nicht geschlossen, dafür ist pg_terminate_backend nötig.
Verwandte Einträge
- Backend beenden (pg_terminate_backend)
- Aktive und blockierende Abfragen anzeigen
- Blockierungsbaum aufbauen (Root Blocker finden)
- Sperrwartezustände im Detail nach Objekt und Sperrmodus untersuchen (pg_locks)
- Lang laufende und 'idle in transaction'-Transaktionen finden
- Lange 'idle in transaction'-Sessions kontrolliert in großer Zahl beenden