From: Tom Lane <tgl@sss.pgh.pa.us>
To: 2986538596@qq.com
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #18469: OOM occurs and backend processes are kept in Zombie state.
Date: Thu, 16 May 2024 13:23:37 -0400
Message-ID: <2117193.1715880217@sss.pgh.pa.us> (raw)
In-Reply-To: <18469-d89fa2c627b01893@postgresql.org>
References: <18469-d89fa2c627b01893@postgresql.org>
PG Bug reporting form <noreply@postgresql.org> writes:
> I was performing a lot of operations on a server deployed with postgresql
> 12.16. As heavy operations performed continuously. memory consumption has
> been increased, the OS eventually got OOM and some background connection
> processes that were taking up too much memory were killed. However, these
> processes were not successfully killed and remained in Zombie state. In the
> meantime, the whole database process seems to be stuck and time out happened
> while connect via psql.
It sounds to me like the OOM killer decided to kill the postmaster
process, rather than the child process(es) that were actually eating
memory. That's *extremely* unhelpful behavior. There is some advice
in our manual about configuring your system to not do that.
> Below is the status after OOM happened:
> Ruby 7822 0.0 0.6 4485088 110940 の May06 10:24 /usr/pgsql/bin/postmaster -D /var/lib/pgsql/data
It's not clear to me where this postmaster process came from,
but it appears to be younger than the other postgres-related
processes you're showing, so they are not its children.
I'd manually nuke all of these processes and start fresh.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-bugs@postgresql.org
Cc: tgl@sss.pgh.pa.us, 2986538596@qq.com, pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #18469: OOM occurs and backend processes are kept in Zombie state.
In-Reply-To: <2117193.1715880217@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox