BUG #18361: systemd[1]: postgresql-16.service: Killing process 25992 (postgres) with signal SIGKILL.

Started by PG Bug reporting formabout 2 years ago5 messagesbugs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following bug has been logged on the website:

Bug reference: 18361
Logged by: Gena Makhomed
Email address: makhomed@gmail.com
PostgreSQL version: 16.2
Operating system: Rocky Linux release 9.3
Description:

PostgreSQL 16.2 installed on the Rocky Linux release 9.3 server from
official repository with official instruction from page
https://www.postgresql.org/download/linux/redhat/

when I execute command

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service

I see, what PostgreSQL 16.2 was killed by SIGKILL.

this is a bug, as I understand, because database will be corrupted.

Is it possible to fix this bug and stop killing PostgreSQL with signal
SIGKILL ?

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service
○ postgresql-16.service - PostgreSQL 16 database server
Loaded: loaded (/usr/lib/systemd/system/postgresql-16.service; enabled;
preset: disabled)
Active: inactive (dead) since Sat 2024-02-24 12:47:19 UTC; 6ms ago
Duration: 3.525s
Docs: https://www.postgresql.org/docs/16/static/
Process: 26666 ExecStartPre=/usr/pgsql-16/bin/postgresql-16-check-db-dir
${PGDATA} (code=exited, status=0/SUCCESS)
Process: 26671 ExecStart=/usr/pgsql-16/bin/postgres -D ${PGDATA}
(code=exited, status=0/SUCCESS)
Main PID: 26671 (code=exited, status=0/SUCCESS)
CPU: 43ms

Feb 24 12:47:15 postgres-16.example.net systemd[1]: Starting PostgreSQL 16
database server...
Feb 24 12:47:15 postgres-16.example.net postgres[26671]: 2024-02-24
12:47:15.985 UTC [26671] LOG: redirecting log output to logging collector
process
Feb 24 12:47:15 postgres-16.example.net postgres[26671]: 2024-02-24
12:47:15.985 UTC [26671] HINT: Future log output will appear in directory
"log".
Feb 24 12:47:15 postgres-16.example.net systemd[1]: Started PostgreSQL 16
database server.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopping PostgreSQL 16
database server...
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service:
Killing process 26672 (postgres) with signal SIGKILL.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service:
Deactivated successfully.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopped PostgreSQL 16
database server.

#2Gena Makhomed
makhomed@gmail.com
In reply to: PG Bug reporting form (#1)
systemd[1]: postgresql-16.service: Killing process 25992 (postgres) with signal SIGKILL.

Previously posted to pgsql-bugs mail list
</messages/by-id/18361-1a3f843f5f6ce694@postgresql.org&gt;
as BUG #18361, but as I understand later, this may not be the PostgreSQL
bug itself, but it may be the rpm/yum/dnf packaging bug?

Can you please help to fix this bug, or find a workaround?

Because killing postgres via SIGKILL is not a good idea.

---------- Forwarded message ---------
От: PG Bug reporting form <noreply@postgresql.org>
Date: сб, 24 февр. 2024 г. в 14:52
Subject: BUG #18361: systemd[1]: postgresql-16.service: Killing process
25992 (postgres) with signal SIGKILL.
To: <pgsql-bugs@lists.postgresql.org>

The following bug has been logged on the website:

Bug reference: 18361
PostgreSQL version: 16.2
Operating system: Rocky Linux release 9.3
Description:

PostgreSQL 16.2 installed on the Rocky Linux release 9.3 server from
official repository with official instruction from page
https://www.postgresql.org/download/linux/redhat/

when I execute command

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service

I see, what PostgreSQL 16.2 was killed by SIGKILL.

this is a bug, as I understand, because database will be corrupted.

Is it possible to fix this bug and stop killing PostgreSQL with signal
SIGKILL ?

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service
○ postgresql-16.service - PostgreSQL 16 database server
Loaded: loaded (/usr/lib/systemd/system/postgresql-16.service; enabled;
preset: disabled)
Active: inactive (dead) since Sat 2024-02-24 12:47:19 UTC; 6ms ago
Duration: 3.525s
Docs: https://www.postgresql.org/docs/16/static/
Process: 26666 ExecStartPre=/usr/pgsql-16/bin/postgresql-16-check-db-dir
${PGDATA} (code=exited, status=0/SUCCESS)
Process: 26671 ExecStart=/usr/pgsql-16/bin/postgres -D ${PGDATA}
(code=exited, status=0/SUCCESS)
Main PID: 26671 (code=exited, status=0/SUCCESS)
CPU: 43ms

Feb 24 12:47:15 postgres-16.example.net systemd[1]: Starting PostgreSQL 16
database server...
Feb 24 12:47:15 postgres-16.example.net postgres[26671]: 2024-02-24
12:47:15.985 UTC [26671] LOG: redirecting log output to logging collector
process
Feb 24 12:47:15 postgres-16.example.net postgres[26671]: 2024-02-24
12:47:15.985 UTC [26671] HINT: Future log output will appear in directory
"log".
Feb 24 12:47:15 postgres-16.example.net systemd[1]: Started PostgreSQL 16
database server.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopping PostgreSQL 16
database server...
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service:
Killing process 26672 (postgres) with signal SIGKILL.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service:
Deactivated successfully.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopped PostgreSQL 16
database server.

--
*Please consider the environment before printing*

#3Laurenz Albe
laurenz.albe@cybertec.at
In reply to: Gena Makhomed (#2)
Re: systemd[1]: postgresql-16.service: Killing process 25992 (postgres) with signal SIGKILL.

On Sun, 2024-02-25 at 10:50 +0200, Gena Makhomed wrote:

Previously posted to pgsql-bugs mail list asBUG #18361, but as I understand later, this may not be the PostgreSQL bug itself, but it may be the rpm/yum/dnf packaging bug?

Can you please help to fix this bug, or find a workaround?

Because killing postgres via SIGKILL is not a good idea.

---------- Forwarded message ---------
Bug reference:      18361
PostgreSQL version: 16.2
Operating system:   Rocky Linux release 9.3

PostgreSQL 16.2 installed on the Rocky Linux release 9.3 server from
official repository with official instruction from page
https://www.postgresql.org/download/linux/redhat/

when I execute command

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service

I see, what PostgreSQL 16.2 was killed by SIGKILL.

this is a bug, as I understand, because database will be corrupted.

Is it possible to fix this bug and stop killing PostgreSQL with signal
SIGKILL ?

Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopping PostgreSQL 16 database server...
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service: Killing process 26672 (postgres) with signal SIGKILL.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service: Deactivated successfully.
Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopped PostgreSQL 16 database server.

Strange. In my "postgresql-16.service", I find

TimeoutStopSec=1h

which should make systemd wait for an hour after sending SIGTERM before it
uses SIGKILL. Is your setting different?

Please consider the environment before printing

Aww. I would have liked to make a poster from it.

Yours,
Laurenz Albe

#4Gena Makhomed
makhomed@gmail.com
In reply to: Laurenz Albe (#3)
Re: systemd[1]: postgresql-16.service: Killing process 25992 (postgres) with signal SIGKILL.

On Mon, Feb 26, 2024 at 11:19 AM Laurenz Albe <laurenz.albe@cybertec.at>
wrote:

Bug reference: 18361

PostgreSQL version: 16.2
Operating system: Rocky Linux release 9.3

PostgreSQL 16.2 installed on the Rocky Linux release 9.3 server from
official repository with official instruction from page
https://www.postgresql.org/download/linux/redhat/

when I execute command

# systemctl stop postgresql-16.service ; systemctl status
postgresql-16.service

I see, what PostgreSQL 16.2 was killed by SIGKILL.

this is a bug, as I understand, because database will be corrupted.

Is it possible to fix this bug and stop killing PostgreSQL with signal
SIGKILL ?

Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopping PostgreSQL

16 database server...

Feb 24 12:47:19 postgres-16.example.net systemd[1]: postgresql-16.service:

Killing process 26672 (postgres) with signal SIGKILL.

Feb 24 12:47:19 postgres-16.example.net systemd[1]:

postgresql-16.service: Deactivated successfully.

Feb 24 12:47:19 postgres-16.example.net systemd[1]: Stopped PostgreSQL

16 database server.

Strange. In my "postgresql-16.service", I find

TimeoutStopSec=1h

which should make systemd wait for an hour after sending SIGTERM before it
uses SIGKILL. Is your setting different?

No, I do not change anything in the postgresql-16.service file, I just
install Postgres 16.2 on the virtual machine with Rocky Linux 9.3, using
detailed step-by step instruction, provided on the page
https://www.postgresql.org/download/linux/redhat/ for Rocky Linux 9 and
execute:

# systemctl start postgresql-16.service ; systemctl status

wait some time, and when - execute this command:

# systemctl stop postgresql-16.service ; systemctl status
and got result:

postgresql-16.service: Killing process 26672 (postgres) with signal
SIGKILL.

Is it possible to avoid this SIGKILL ?

--
*Please consider the environment before printing*

#5Devrim GÜNDÜZ
devrim@gunduz.org
In reply to: Gena Makhomed (#4)
Re: systemd[1]: postgresql-16.service: Killing process 25992 (postgres) with signal SIGKILL.

Hi,

On Tue, 2024-02-27 at 23:34 +0200, Gena Makhomed wrote:

# systemctl stop postgresql-16.service ; systemctl status
and got result:

postgresql-16.service: Killing process 26672 (postgres) with signal
SIGKILL.

I don't think this thread belongs to this list, but you should check
PostgreSQL logs for more details.

Regards,
--
Devrim Gündüz
Open Source Solution Architect, PostgreSQL Major Contributor
Twitter: @DevrimGunduz , @DevrimGunduzTR