Re: An oversight in ExecInitAgg for grouping sets - Mailing list pgsql-hackers

From David Rowley
Subject Re: An oversight in ExecInitAgg for grouping sets
Date
Msg-id CAApHDvoHNUC8iw-S8Y3_1MTzEwHZR8TGAynUuvJpf9So0N6oKw@mail.gmail.com
Whole thread Raw
In response to Re: An oversight in ExecInitAgg for grouping sets  (Richard Guo <guofenglinux@gmail.com>)
Responses Re: An oversight in ExecInitAgg for grouping sets  (Richard Guo <guofenglinux@gmail.com>)
Re: An oversight in ExecInitAgg for grouping sets  (David Rowley <dgrowleyml@gmail.com>)
List pgsql-hackers
On Thu, 5 Jan 2023 at 20:06, Richard Guo <guofenglinux@gmail.com> wrote:
> I reviewed this patch and have some comments.

Thanks for looking at this. I think I've fixed all the issues you mentioned.

One extra thing I noticed was that I had to add a new
VALGRIND_MAKE_MEM_DEFINED in AllocSetAlloc when grabbing an item off
the freelist. I didn't quite manage to figure out why that's needed as
when we do AllocSetFree() we don't mark the pfree'd memory with
NOACCESS, and it also looks like AllocSetReset() sets the keeper
block's memory to NOACCESS, but that function also clears the
freelists too, so the freelist chunk is not coming from a recently
reset context.

I might need to spend a bit more time on this to see if I can figure
out why this is happening.  On the other hand, maybe we should just
mark pfree'd memory as NOACCESS as that might find another class of
issues.

David

Attachment

pgsql-hackers by date:

Previous
From: John Naylor
Date:
Subject: Re: [PoC] Improve dead tuple storage for lazy vacuum
Next
From: Peter Eisentraut
Date:
Subject: Re: Privileges on PUBLICATION