On Tue, 31 Oct 2023 at 10:48, Ashutosh Bapat <ashutosh.bapat....@gmail.com> wrote: > > On Thu, Sep 14, 2023 at 4:39 PM Ashutosh Bapat > <ashutosh.bapat....@gmail.com> wrote: > > > > The patch set is thus > > 0001 - patch used to measure memory used during planning > > > > 0002 - Patch to free intermediate Relids computed by > > adjust_child_relids_multilevel(). I didn't test memory consumption for > > multi-level partitioning. But this is clear improvement. In that > > function we free the AppendInfos array which as many pointers long as > > the number of relids. So it doesn't make sense not to free the Relids > > which can be {largest relid}/8 bytes long at least. > > > > 0003 - patch to save and reuse commuted RestrictInfo. This patch by > > itself shows a small memory saving (3%) in the query below where the > > same clause is commuted twice. The query does not contain any > > partitioned tables. > > create table t2 (a int primary key, b int, c int); > > create index t2_a_b on t2(a, b); > > select * from t2 where 10 = a > > Memory used without patch: 13696 bytes > > Memory used with patch: 13264 bytes > > > > 0004 - Patch which implements the hash table of hash table described > > above and also code to avoid repeated RestrictInfo list translations. > > > > I will add this patchset to next commitfest. > > > > -- > > Best Wishes, > > Ashutosh Bapat > > PFA rebased patches. Nothing changes in 0002, 0003 and 0004. 0001 is > the squashed version of the latest patch set at > https://www.postgresql.org/message-id/CAExHW5sCJX7696sF-OnugAiaXS=Ag95=-m1csrjcmyyj8pd...@mail.gmail.com.
CFBot shows that the patch does not apply anymore as in [1]: === Applying patches on top of PostgreSQL commit ID 7014c9a4bba2d1b67d60687afb5b2091c1d07f73 === === applying patch ./0001-Report-memory-used-for-planning-a-query-in--20231031.patch ... patching file src/test/regress/expected/explain.out Hunk #5 FAILED at 290. Hunk #6 succeeded at 545 (offset 4 lines). 1 out of 6 hunks FAILED -- saving rejects to file src/test/regress/expected/explain.out.rej patching file src/tools/pgindent/typedefs.list Hunk #1 succeeded at 1562 (offset 18 lines). Please post an updated version for the same. [1] - http://cfbot.cputube.org/patch_46_4564.log Regards, Vignesh