Re: 7.4 - FK constraint performance - Mailing list pgsql-sql

From Tom Lane
Subject Re: 7.4 - FK constraint performance
Date
Msg-id 2662.1076687804@sss.pgh.pa.us
Whole thread Raw
In response to Re: 7.4 - FK constraint performance  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
Responses Re: 7.4 - FK constraint performance  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
List pgsql-sql
Stephan Szabo <sszabo@megazone.bigpanda.com> writes:
> On Fri, 13 Feb 2004, Tom Lane wrote:
>> I was looking at that last night.  It seems like we could add a LIMIT at
>> least in some contexts.  In the case at hand, we're just going to error
>> out immediately if we find a matching row, and so there's no need for
>> FOR UPDATE, is there?

> I think there still is, because a not yet committed transaction could have
> deleted them all in which case I think the correct behavior is to wait and
> if that transaction commits allow the action and if it rolls back to
> error.

Good point.  Okay, we can't put in a LIMIT.  But we could still hack the
planner to prefer a fast-start plan by passing an out-of-band tuple
fraction, for those RI plans where it's appropriate.  That would not
affect correctness.

>> However, I'm not sure it would help the OP anyway.  With the stats he
>> had, the planner would still take a seqscan, because it's going to
>> expect that it can find a match by probing the first ten or so rows of
>> the first page.  With anything close to the normal cost parameters,
>> that's going to look more expensive than an index probe.

s/more expensive/less expensive/ ... need more caffeine obviously ...
        regards, tom lane


pgsql-sql by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: 7.4 - FK constraint performance
Next
From: Stephan Szabo
Date:
Subject: Re: 7.4 - FK constraint performance