Hey. Und zwar will ich bei mir ne Funktion einbauen, wenn ein User gewisse Kriterien nicht erfüllt diesen (mit allen Verbindungen) vom Server zu kicken und zu sperren.
D.h. Wenn eine Anfrage mit “Select * from table” ausgeführt wird, dass dieser unterbrochen wird.
pg_cancel_backend(pid), die PID kannst Du aus der Spalte procpid vom View pg_stat_activity erfragen, via TRIGGER auf table. Man kann sich auch sicherlich noch deutlich komplizierter durch die Brust ins Auge ballern oder auch auch gleich dem User den Zugriff auf table via den üblichen Zugriffsregeln versperren.
okay. vorweg danke für die Infos. Derzeit regel ich eine “sperre” über iptables. - ist aber irgendwie eine unschöne Lösung für mein Problem. Werd mal ein paar Tests machen.
EDIT:
Okay prozess bleibt natürlich stehen, da nur dieser “gecancelt” wird und nicht terminiert wird. Querys werden auch perfekt abgebrochen, genau das was ich möchte. Danke.