Skip site navigation (1) Skip section navigation (2)

Re: Catching resource leaks during WAL replay

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
Cc: Simon Riggs <simon(at)2ndQuadrant(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Catching resource leaks during WAL replay
Date: 2013-03-28 15:09:36
Message-ID: 28353.1364483376@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> writes:
> On 28.03.2013 01:01, Tom Lane wrote:
>> Simon Riggs<simon(at)2ndQuadrant(dot)com>  writes:
>>> I'm inclined to think that the overhead isn't worth the trouble. This
>>> is the only bug of its type we had in recent years.

>> I agree that checking for resource leaks after each WAL record seems
>> too expensive compared to what we'd get for it.  But perhaps it's worth
>> making a check every so often, like at restartpoints?

> That sounds very seldom. How about making it an assertion to check after 
> every record? I guess I'll have to do some testing to see how expensive 
> it really is.

Well, the actually productive part of this patch is to reduce such a
failure from ERROR to WARNING, which seems like it probably only
requires *one* resource cleanup after we exit the apply loop.  Doing it
per restartpoint is probably reasonable to limit the resource owner's
memory consumption (if there were a leak) over a long replay sequence.
I am really not seeing much advantage to doing it per record.

I suppose you are thinking of being helpful during development, but if
anything I would argue that the current behavior of a hard failure is
best for development.  It guarantees that the developer will notice the
failure, if it occurs at all in his test scenario; whereas a WARNING
that goes only to the postmaster log will be very very easily missed.

			regards, tom lane


In response to

pgsql-hackers by date

Next:From: Stephen FrostDate: 2013-03-28 15:24:42
Subject: Re: FDW for PostgreSQL
Previous:From: Simon RiggsDate: 2013-03-28 15:07:08
Subject: Re: [COMMITTERS] pgsql: Allow external recovery_config_directory

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group