Re: [PATCH] Report the query string that caused a memory error under Valgrind

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: Onur Tirtir <Onur(dot)Tirtir(at)microsoft(dot)com>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [PATCH] Report the query string that caused a memory error under Valgrind
Date: 2023-03-22 16:00:16
Message-ID: 030bd02c-06c0-4975-7b92-a36704f73532@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 31.01.23 15:00, Onur Tirtir wrote:
> We use Valgrind --together with the suppression file provided in
> Postgres repo-- to test Citus extension against memory errors.
>
> We replace /bin/postgres executable with a simple bash script that
> executes the original postgres executable under Valgrind and then we run
> our usual regression tests.
>
> However, it is quite hard to understand which query caused a memory
> error in the stack traces that has been dumped into valgrind logfile.
>
> For this reason, we propose the attached patch to allow Valgrind to
> report the query string that caused a memory error right after the
> relevant stack trace.
>
> I belive this would not only be useful for Citus but also for Postgres
> and other extensions in their valgrind-testing process.

I can see how this could be useful. But this only handles queries using
the simple protocol. At least the extended protocol should be handled
as well. Maybe it would be better to move this up to PostgresMain() and
handle all protocol messages?

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2023-03-22 16:16:15 Re: Non-superuser subscription owners
Previous Message Melanie Plageman 2023-03-22 15:35:46 Re: Add pg_walinspect function with block info columns