Re: pgsql: Fix valgrind failure

From: Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com>
To: Álvaro Herrera <alvherre(at)kurilemu(dot)de>
Cc: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: Re: pgsql: Fix valgrind failure
Date: 2026-04-07 09:41:58
Message-ID: adTRZrIyZjAhFj9h@ip-10-97-1-34.eu-west-3.compute.internal
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Hi,

On Tue, Apr 07, 2026 at 09:15:34AM +0000, Álvaro Herrera wrote:
> Fix valgrind failure
>
> Buildfarm member skink reports that the new REPACK code is trying to
> write uninitialized bytes to disk, which correspond to padding space in
> the SerializedSnapshotData struct. Silence that by initializing the
> memory in SerializeSnapshot() to all zeroes.

- SerializedSnapshotData serialized_snapshot;
+ SerializedSnapshotData serialized_snapshot = {0};

Should we use memset() instead? As "= {0}" is guaranteed to zero padding bytes
(for object that has automatic storage duration) as of C23 (see Andres's reply
in [0]) but we require C11 so far.

I wonder if we should introduce a new macro say "INITIALIZE_PADDING" that I
proposed in [1].

[0]: https://postgr.es/m/aoaj45foewpjtu6r5cs67yrx4en3pkurs23e4azv6tbikpw6c3%40h3pnaqaksoeg
[1]: https://postgr.es/m/ablMZvnGhX8h5GgK%40ip-10-97-1-34.eu-west-3.compute.internal

Regards,

--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Heikki Linnakangas 2026-04-07 10:27:27 pgsql: Optimize sort and deduplication in ginExtractEntries()
Previous Message Peter Eisentraut 2026-04-07 09:37:30 pgsql: Add isolation tests for UPDATE/DELETE FOR PORTION OF