From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Cost of AtEOXact_Buffers in --enable-cassert |
Date: | 2010-08-06 18:53:18 |
Message-ID: | 201008062053.21257.andres@anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Friday 06 August 2010 20:23:15 Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > The most prohibitively expensive part is the AtEOXact_Buffers check of
> > running through all buffers and checking their pin count. And it makes
> > $app's regression tests take thrice their time...
> >
> > Would somebody object agains putting those in an extra define so that
> > those can be disabled in pg_config_manual? Or even disable it by default
> > entirely...
> Not a chance for the latter; this is an important sanity check that
> catches real coding mistakes with some frequency.
Ok.
> I'd be willing to consider a "half assert" mode that turns off some of
> the most expensive checks, but AtEOXact_Buffers is hardly the only thing
> that ought to be in that list. The CLOBBER_FREED_MEMORY and memory
> context checking stuff is pretty durn expensive too.
I personally have seen that catching way more bugs than the AtEOXact_Buffers
check, but that might be because I have found mostly bugs in random c
functions, not in pg stuff ;-)
I will wait a bit and wait for more suggestions about expensive checks and/or
other comments and will provide a patch for such a mode.
Andres
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-08-06 19:00:35 | Re: including backend ID in relpath of temp rels - updated patch |
Previous Message | Tom Lane | 2010-08-06 18:43:10 | Re: including backend ID in relpath of temp rels - updated patch |