Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vOh9k-001hJy-29 for pgsql-docs@arkaria.postgresql.org; Thu, 27 Nov 2025 18:55:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vOh9j-007zFq-0r for pgsql-docs@arkaria.postgresql.org; Thu, 27 Nov 2025 18:55:51 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vOh9j-007zFi-01 for pgsql-docs@lists.postgresql.org; Thu, 27 Nov 2025 18:55:51 +0000 Received: from mail-io1-xd2c.google.com ([2607:f8b0:4864:20::d2c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vOh9g-001n5n-1J for pgsql-docs@postgresql.org; Thu, 27 Nov 2025 18:55:50 +0000 Received: by mail-io1-xd2c.google.com with SMTP id ca18e2360f4ac-949033fb2a9so55877639f.2 for ; Thu, 27 Nov 2025 10:55:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764269748; x=1764874548; darn=postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=fc0AL5XrUTeK95Dnf4a0xc6LPlESSeNkw+oqF8fFsQk=; b=MUH+lv2erQlFnAar6T7qaVlqw622aikJ7L1IzKWv6DSBBNB0Jn27IGtRCEPFcbSMUg mTYs1c4VpOIveZxARsvyh8pKONi2UnafYBeCsQIdGZifRhaKM7ByKDQeMv6xwtbY8z87 /8UtxIPu4ELmRIFuUfKSLEV9tOECEhKLjueQz/i2vEunoOcpbgI5GNcICwpGf7i5W3n+ OX4Xy+rh31nXP2qx1nAu7cxJLid7PiekEqxOh79SsT+2ft5tP0TdcbLgkV5ZieKlz0mQ FzjUPRLV+iImENlGSTzH1hxU1MgD71rmSNumhZGLyqiAUBjtVCSYwpF/lgRr09yWLHt8 UmYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764269748; x=1764874548; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=fc0AL5XrUTeK95Dnf4a0xc6LPlESSeNkw+oqF8fFsQk=; b=iWIZ+HAGEnegyJjYbeXF/K/ZZAndy1srvY9KtWDSOUmCXd8INWIkBy3nObQ3W49yVq tci2VLJWYTWUUtmiWJ5JYVfOn75y/8CoRCkGiYz1mrgVI8BOrookEDUTskWaIOvC/VdN lBbkzVN3h2lQ043HaSR3ZR1kvZQui8swUCTYVCFHfuvH8enMQ3Ou4jKlZulsXbsBOvMK Tm8x761plf4ayEYxQf8Yu4u4haxjDyGRq9BXv/4vywFRDJrcFCWZaMJrdvpZUt9PBXU6 Hz7aSraLkFchiDBSUefPQX0jxJtfLPHAClQ7RGob3o++ozdYLMkP1MgKjikBRFv+W4Lw 0UoA== X-Gm-Message-State: AOJu0Ywu4qPbo/qZY6MI74ZbuyYDo97mUgq43bZo4vngQY7MaxinUZnZ rjXOH8rd1O2pqbSYqIG0/6DpY9m7xfIsWPose2gzqUEjcQ7zgxz3AjvX5iQ5GkLlwEiPPqcEoAh 0bhQkID6fiOPxQOddHQtfq1ShpxdJzM0pJnT5 X-Gm-Gg: ASbGncsvu7RQ75obuCGLXFJbJAu2VQ+cl8pHeHerACTnTWl+oNeurpSmoymPl3+umpC pBN+23RmKzehMIRNx4gUBBNZR9BS9QfCcGCoQp2ptfDAD4ilEEdD90AXZSqUuZnn6GW7fBiRm3g WHd/0FYKkx+BERKI4i0O9K+9NCwFcng5mMAEseZFNzH6z1NQSwHSOkBbHxwwyY1z9K4iAe3C+E4 c5pwSq26Ef8CG5PqaodmogK5zOnru+kjSUk3BWiGy7glMHGKchFnUen/A9/FpDZl8VJdI8= X-Google-Smtp-Source: AGHT+IFWeBDrgVCzhJqnBUcMDVkxvnxZK1PExY5aHL3pkokBC+dnQSpg4CtrFBWqakJcHkMkrbspjBzBpeQvPOaUo70= X-Received: by 2002:a02:c60d:0:b0:5b7:abe8:568b with SMTP id 8926c6da1cb9f-5b9997850b9mr8099638173.19.1764269748107; Thu, 27 Nov 2025 10:55:48 -0800 (PST) MIME-Version: 1.0 From: Andrew Jackson Date: Thu, 27 Nov 2025 12:55:11 -0600 X-Gm-Features: AWmQ_bnY_x5NEvj3INNamUM3x5Or-jS5SVK5DzprUoSOa3WZO14AzV372xh2fYw Message-ID: Subject: Add Restart=on-failure To Example Systemd File To: pgsql-docs@postgresql.org Content-Type: multipart/mixed; boundary="0000000000009fd55a0644980fec" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000009fd55a0644980fec Content-Type: text/plain; charset="UTF-8" Hi, Currently the systemd file in the documentation does not specify a restart policy. By default systemd will not attempt to restart a service that has failed (killed by OOM-killer for example) [0]. The systemd docs recommends "Setting this to on-failure is the recommended choice for long-running services, in order to increase reliability by attempting automatic recovery from errors." I think that Postgres is probably a good example of a "long-running service". Pgbouncer for example also uses "Restart=on-failure" [1]. Wondering also if there are any factors that I am not considering here. Perhaps if this is the case that this is not good blanket guidance, it would be worth it to provide some guidance around Restart systemd parameter in the postgres docs. [0] https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html [1] https://github.com/pgbouncer/pgbouncer/blob/master/etc/pgbouncer.service Thanks, Andrew Jackson --0000000000009fd55a0644980fec Content-Type: text/x-patch; charset="US-ASCII"; name="0001-doc-Add-restart-on-failure-to-example-systemd-file.patch" Content-Disposition: attachment; filename="0001-doc-Add-restart-on-failure-to-example-systemd-file.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mihsfat10 RnJvbSA5YTA4ODVlY2ZjY2JlNjlkNjcwNGQwYzBkNjkzNDdjY2MyM2NkZGRiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgSmFja3NvbiA8YW5kcmV3amFja3Nvbjk0N0BnbWFp bC5jb20+CkRhdGU6IFRodSwgMjcgTm92IDIwMjUgMTA6NDU6NTIgLTA2MDAKU3ViamVjdDogW1BB VENIXSBkb2M6IEFkZCByZXN0YXJ0IG9uIGZhaWx1cmUgdG8gZXhhbXBsZSBzeXN0ZW1kIGZpbGUK ClRoZSBkb2N1bWVudGF0aW9uIHByZXZpb3VzbHkgaGFkIGEgc3lzdGVtZCB1bml0IGZpbGUKdGhh dCB3b3VsZCBub3QgYXR0ZW1wdCB0byByZWNvdmVyIGZyb20gcHJvY2VzcyBmYWlsdXJlcwpzdWNo IGFzIE9PTSdzLCBzZWdmYXVsdHMsIGV0Yy4gVGhpcyBjb21taXQgYWRkcwpgUmVzdGFydD1vbi1m YWlsdXJlYCB3aGljaCB0ZWxscyBzeXN0ZW1kIHRvIGF0dGVtcHQgdG8KcmVzdGFydCB0aGUgcHJv Y2VzcyBhZnRlciBmYWlsdXJlLiBUaGlzIGlzIHRoZSByZWNvbW1lbmRlZApjb25maWd1cmF0aW9u IHBlciB0aGUgc3lzdGVtZCBkb2N1bWVudGF0aW9uOiAiU2V0dGluZyB0aGlzCnRvIG9uLWZhaWx1 cmUgaXMgdGhlIHJlY29tbWVuZGVkIGNob2ljZSBmb3IgbG9uZy1ydW5uaW5nCnNlcnZpY2VzIi4g TW9zdCBwb3N0Z3JlcyB1c2VycyB3aWxsIHNpbXBseSBjb3B5L3Bhc3RlCndoYXQgdGhlIHBvc3Rn cmVzIGRvY3MgcmVjb21tZW5kIGFuZCB3aWxsIHByb2JhYmx5IGRvCnRoZWlyIG93biByZXNlYXJj aCBhbmQgY2hhbmdlIHRoZSBzZXJ2aWNlIGZpbGUgdG8gcmVzdGFydApvbiBmYWlsdXJlLCBzbyBt aWdodCBhcyB3ZWxsIHNldCB0aGlzIGFzIHRoZSBkZWZhdWx0IGluCnRoZSBwb3N0Z3JlcyBkb2Nz LgotLS0KIGRvYy9zcmMvc2dtbC9ydW50aW1lLnNnbWwgfCAxICsKIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9ydW50aW1lLnNnbWwgYi9k b2Mvc3JjL3NnbWwvcnVudGltZS5zZ21sCmluZGV4IDBjNjBiYWZhYzYzLi5kYmIzYjJlZjUzZiAx MDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3J1bnRpbWUuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwv cnVudGltZS5zZ21sCkBAIC00OTEsNiArNDkxLDcgQEAgRXhlY1JlbG9hZD0vYmluL2tpbGwgLUhV UCAkTUFJTlBJRAogS2lsbE1vZGU9bWl4ZWQKIEtpbGxTaWduYWw9U0lHSU5UCiBUaW1lb3V0U2Vj PWluZmluaXR5CitSZXN0YXJ0PW9uLWZhaWx1cmUKCiBbSW5zdGFsbF0KIFdhbnRlZEJ5PW11bHRp LXVzZXIudGFyZ2V0Ci0tCjIuNDkuMAoK --0000000000009fd55a0644980fec--