Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ppEj6-0002Vo-2B for pgsql-admin@arkaria.postgresql.org; Wed, 19 Apr 2023 20:48:28 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ppEj4-0003Bo-9m for pgsql-admin@arkaria.postgresql.org; Wed, 19 Apr 2023 20:48:26 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ppEj3-0003Bf-Ur for pgsql-admin@lists.postgresql.org; Wed, 19 Apr 2023 20:48:25 +0000 Received: from jakobs.com ([85.214.83.89] helo=rs.plausibolo.de) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ppEj1-003te4-Fx for pgsql-admin@lists.postgresql.org; Wed, 19 Apr 2023 20:48:25 +0000 Received: from localhost (localhost [127.0.0.1]) by rs.plausibolo.de (Postfix) with ESMTP id 3F70D380497; Wed, 19 Apr 2023 22:48:20 +0200 (CEST) Received: from rs.plausibolo.de ([IPv6:::1]) by localhost (h2367442.stratoserver.net [IPv6:::1]) (amavisd-new, port 10024) with ESMTP id IOn72PipCw40; Wed, 19 Apr 2023 22:48:20 +0200 (CEST) Received: from [192.168.0.118] (dynamic-046-114-152-130.46.114.pool.telefonica.de [46.114.152.130]) by rs.plausibolo.de (Postfix) with ESMTPSA id C6815380482; Wed, 19 Apr 2023 22:48:19 +0200 (CEST) Message-ID: <961aa7e4-b076-c66b-3c23-32bdd5e352a3@jakobs.com> Date: Wed, 19 Apr 2023 22:48:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: pg_cancel_backend and pg_terminate_backend Content-Language: de-DE To: pgsql-admin@lists.postgresql.org References: From: Holger Jakobs In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------pRNmstBk6itl0hGqidRoV8zi" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------pRNmstBk6itl0hGqidRoV8zi Content-Type: multipart/mixed; boundary="------------TaWAYmz80lrn5nhuPcBOTjyH"; protected-headers="v1" From: Holger Jakobs To: pgsql-admin@lists.postgresql.org Message-ID: <961aa7e4-b076-c66b-3c23-32bdd5e352a3@jakobs.com> Subject: Re: pg_cancel_backend and pg_terminate_backend References: In-Reply-To: --------------TaWAYmz80lrn5nhuPcBOTjyH Content-Type: multipart/alternative; boundary="------------7JfQdfS8OOEKn2vQoUcl579R" --------------7JfQdfS8OOEKn2vQoUcl579R Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 QW0gMTkuMDQuMjMgdW0gMjI6MTMgc2NocmllYiBXZWxscyBPbGl2ZXI6DQo+IEJlY2F1c2Ug bG9uZ2VyIGlkbGUgdHJhbnNhY3Rpb25zIGFyZSB1c2VkIGJ5IGEgYnVuY2ggb2YgcHJvY2Vz c2VzLCBidXQgDQo+IGl0J3MgYSBjZXJ0YWluIGdyb3VwIG9mIHVzZXJzIEkgZG9uJ3Qgd2Fu dCBoYXZpbmcgaWRsZSB0cmFuc2FjdGlvbnMsIA0KPiBzbyBoZXJlIHdlIGFyZS4uLg0KPg0K PiBPbiBXZWQsIEFwciAxOSwgMjAyMyBhdCAxOjEx4oCvUE0gVGhvbWFzIEtlbGxlcmVyIDxz aGFtbWF0QGdteC5uZXQ+IHdyb3RlOg0KPg0KPiAgICAgV2VsbHMgT2xpdmVyIHNjaHJpZWIg YW0gMTkuMDQuMjAyMyB1bSAyMTo0MToNCj4gICAgID4gSSB1c3VhbGx5IHByZWZlciBwZ19j YW5jZWxfYmFja2VuZCBiZWNhdXNlIGl0IHNlZW1zLi4gbmljZXIsIGJ1dA0KPiAgICAgPiBs YXRlbHkgSSd2ZSBoYWQgYSB0cm91Ymxlc29tZSB1c2VyIHdobyBsZWF2ZXMgdHJhbnNhY3Rp b25zIG9wZW4gYW5kDQo+ICAgICA+IEkndmUgc2NyaXB0ZWQgdXAgYSBjYWxsIHRvIHBnX3Rl cm1pbmF0ZV9iYWNrZW5kIGFmdGVyIDYwIG1pbnV0ZXMgaW4NCj4gICAgID4gYW4gaWRsZSB0 cmFuc2FjdGlvbi4gSXQgd29ya3Mgd2VsbC4NCj4NCj4gICAgIFdoeSBkb24ndCB5b3UgdXNl IHRoZSBpZGxlX2luX3RyYW5zYWN0aW9uX3Nlc3Npb25fdGltZW91dCB0byBkbw0KPiAgICAg dGhpcyBhdXRvbWF0aWNhbGx5Pw0KPg0KQWN0dWFsbHksIHlvdSBjYW4gc2V0IHRoaXMgZm9y IGNlcnRhaW4gdXNlcnM6DQoNCkFMVEVSIFJPTEUgYWxpY2UgU0VUIGlkbGVfaW5fdHJhbnNh Y3Rpb25fc2Vzc2lvbl90aW1lb3V0IFRPICcxMDAgcyc7DQoNCkJ1dCB0aGUgZmFjdCB0aGF0 IHRoaXMgaXMgcG9zc2libGUgaW1wbGllcyB0aGF0IGVhY2ggc2Vzc2lvbiBjYW4gc2V0IA0K dGhpcyBwYXJhbWV0ZXIgdG8gYW55IHZhbHVlLCBBRkFJSy4gQ29ycmVjdCBtZSBpZiBJJ20g d3JvbmcuDQoNCi0tIA0KDQpIb2xnZXIgSmFrb2JzLCBCZXJnaXNjaCBHbGFkYmFjaCwgVGVs LiArNDktMTc4LTk3NTkwMTINCg0K --------------7JfQdfS8OOEKn2vQoUcl579R Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Am 19.04.23 um 22:13 schrieb Wells Oliver:
Because longer idle transactions are used by a bunch of processes, but it's a certain group of users I don't want having idle transactions, so here we are...

On Wed, Apr 19, 2023 at 1:11=E2=80=AFPM Thomas Kellerer <sham= mat@gmx.net> wrote:
= Wells Oliver schrieb am 19.04.2023 um 21:41:
> I usually prefer pg_cancel_backend because it seems.. nicer, but
> lately I've had a troublesome user who leaves transactions open and
> I've scripted up a call to pg_terminate_backend after 60 minutes in
> an idle transaction. It works well.

Why don't you use the idle_in_transaction_session_timeout to do this automatically?

Actually, you can set this for certain users:

ALTER ROLE alice SET idle_in_transaction_session_timeout TO '100 s';

But the fact that this is possible implies that each session can set this parameter to any value, AFAIK. Correct me if I'm wrong.

--
Holger Jakobs, Bergisch Glad=
bach, Tel. +49-178-9759012
--------------7JfQdfS8OOEKn2vQoUcl579R-- --------------TaWAYmz80lrn5nhuPcBOTjyH-- --------------pRNmstBk6itl0hGqidRoV8zi Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wmMEABEIACMWIQScuJCxWJK1p5BOebGKV5yTsxlhugUCZEBTkgUDAAAAAAAKCRCKV5yTsxlhutDn AJoDiAp356XaDZGwk2ay2SBVWwsf6wCdGcbVToR7b/27Z/EQUkd+ACW+tuo= =YRGy -----END PGP SIGNATURE----- --------------pRNmstBk6itl0hGqidRoV8zi--