On Tue, Feb 14, 2023 at 6:25 AM Andres Freund <and...@anarazel.de> wrote: > > Hi, > > On 2023-02-13 15:22:02 -0800, Peter Geoghegan wrote: > > More concretely, it looks like GetWALRecordInfo() calls > > CStringGetTextDatum/cstring_to_text in a way that accumulates way too > > much memory in ExprContext. > > Additionally, we leak two stringinfos for each record. > > > > This could be avoided by using a separate memory context that is reset > > periodically, or something else along the same lines. > > Everything other than a per-row memory context that's reset each time seems > hard to manage in this case. > > Somehwat funnily, GetWALRecordsInfo() then ends up being unnecessarily > dilligent about cleaning up O(1) memory, after not caring about O(N) memory...
Thanks for reporting. I'll get back to you on this soon. -- Bharath Rupireddy PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com