public inbox for [email protected]  
help / color / mirror / Atom feed
From: Chao Li <[email protected]>
To: Henrik TJ <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Subject: Re: Fix memory leak in postmasterMain
Date: Wed, 22 Apr 2026 14:45:29 +0800
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>



> On Apr 21, 2026, at 22:56, Henrik TJ <[email protected]> wrote:
> 
> Hi
> 
> On Sat, 21 Feb 2026, Henrik TJ wrote:
> 
>> This is fairly inconsequential as memory leaks goes, but if -D is used when starting postgres, the memory allocated by stdrup() will never be freed. Found with valgrind.
> 
> Rebased version of this patch attached.
> 
> To see valgrind catch the leak:
> 
> 1. Compile with valgrind.
> 2. Run postgres with valgrind:
>   valgrind --leak-check=full ./pgrun/bin/postgres -D pgdata/
> 
> The -D argument is required, as it is the argument from there that does not get freed. This should yield:
> 
> ==444240== 8 bytes in 1 blocks are definitely lost in loss record 29 of 849
> ==444240==    at 0x4840B26: malloc (vg_replace_malloc.c:447)
> ==444240==    by 0x5114A2E: strdup (strdup.c:42)
> ==444240==    by 0x6B7CE0: PostmasterMain (../src/backend/postmaster/postmaster.c:656)
> ==444240==    by 0x602555: main (../src/backend/main/main.c:231)
> 
> 
>  best regards, Henrik<v2-0001-Fix-userDoption-not-getting-freed-in-postmaster.patch>

From my experience, most of the time the postmaster is started with -D. On Linux and macOS, that path can be quite long, PATH_MAX is often 4096 on many Unix-like systems, and I am not sure about Windows. So I think this leak is worth fixing.

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/









view thread (7+ messages)  latest in thread

reply

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: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: Fix memory leak in postmasterMain
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox