Re: slru.c race condition (was Re: TRAP: FailedAssertion("!((itemid)->lp_flags

From: Gregory Maxwell <gmaxwell(at)gmail(dot)com>
To: "Jim C(dot) Nasby" <jnasby(at)pervasive(dot)com>
Cc: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Gavin Sherry <swm(at)linuxworld(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: slru.c race condition (was Re: TRAP: FailedAssertion("!((itemid)->lp_flags
Date: 2005-10-31 20:46:15
Message-ID: e692861c0510311246y4f9409feh692e1de15ba1c5d3@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

On 10/31/05, Jim C. Nasby <jnasby(at)pervasive(dot)com> wrote:
> On Mon, Oct 31, 2005 at 01:34:17PM -0500, Bruce Momjian wrote:
> > There is no way if the system has some incorrect value whether that
> > would later corrupt the data or not. Anything the system does that it
> > shouldn't do is a potential corruption problem.
> But is it safe to say that there are areas where a failed assert is far
> more likely to result in data corruption? And that there's also areas
> where there's likely to be difficult/impossible to find bugs, such as
> race conditions? ISTM that it would be valuable to do some additional
> checking in these critical areas.

There are, no doubt, also places where an assert has minimal to no
performance impact. I'd wager a guess that the intersection of low
impact asserts, and asserts which measure high risk activities, is
small enough to be uninteresting.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Mag Gam 2005-10-31 22:12:17 Re: 8.1 Release Candidate 1 Coming ...
Previous Message Tom Lane 2005-10-31 20:42:06 Re: 8.1 Release Candidate 1 Coming ...

Browse pgsql-patches by date

  From Date Subject
Next Message Simon Riggs 2005-10-31 22:41:49 Re: Partitioning docs
Previous Message Jim C. Nasby 2005-10-31 19:30:32 Re: slru.c race condition (was Re: TRAP: FailedAssertion("!((itemid)->lp_flags