Thread: Re: Why our Valgrind reports suck
Hi, On 2025-05-09 11:29:43 -0400, Andres Freund wrote: > We currently don't reset TopMemoryContext at exit, which, obviously, does > massively increase the number of leaks. But OTOH, without that there's not a > whole lot of value in the leak check... Briefly looking through the leaks indeed quickly found a real seeming leak, albeit of limited size: ProcessStartupPacket() does buf = palloc(len + 1); in TopMemoryContext() without ever freeing it. I have wondered if we ought to have some infrastructure to tear down all relcache, catcache entries (and other similar things) before shutdown if MEMORY_CONTEXT_CHECKING is enabled. That would make it a lot easier to see leaks at shutdown. We certainly have had leaks in relcache etc... Greetings, Andres Freund
Andres Freund <andres@anarazel.de> writes: > Briefly looking through the leaks indeed quickly found a real seeming leak, > albeit of limited size: > ProcessStartupPacket() does > buf = palloc(len + 1); > in TopMemoryContext() without ever freeing it. Yeah, I saw that too. Didn't seem worth doing anything about it unless we make pretty massive cleanups elsewhere. > I have wondered if we ought to have some infrastructure to tear down all > relcache, catcache entries (and other similar things) before shutdown if > MEMORY_CONTEXT_CHECKING is enabled. That would make it a lot easier to see > leaks at shutdown. We certainly have had leaks in relcache etc... I'd be content if all that stuff was shown as "still reachable". regards, tom lane