Re: IndexJoin memory problem using spgist and boxes - Mailing list pgsql-hackers

From Alexander Kuzmenkov
Subject Re: IndexJoin memory problem using spgist and boxes
Date
Msg-id 28309a69-16bd-27f1-bcd7-b524778e2152@postgrespro.ru
Whole thread Raw
In response to Re: IndexJoin memory problem using spgist and boxes  (Anton Dignös <dignoes@inf.unibz.it>)
Responses Re: IndexJoin memory problem using spgist and boxes  (Anton Dignös <dignoes@inf.unibz.it>)
List pgsql-hackers
On 04.03.2018 20:20, Anton Dignös wrote:
> The better alternative may be to have two temporary memory contexts,
> one per-tuple for calling the inner consistent method and one
> per-index-scan for the traversal memory.

Yes, this seems to be a better way of fixing the problem without 
introducing regressions mentioned by Tom. We'd keep a separate traversal 
context in ScanOpaque and run most of the spgWalk in it, except calling 
storeRes in query context and the inner consistent method in short-lived 
context.

Also, I think it would be worthwhile to test the resulting patch with 
valgrind. The allocations are not very apparent in the code, so it's 
easy to miss something.

-- 
Alexander Kuzmenkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: Optimize Arm64 crc32c implementation in Postgresql
Next
From: Robert Haas
Date:
Subject: Re: parallel append vs. simple UNION ALL