Re: Re: Adding foreign key constraint holds exclusive lock for too long (on production database) - Mailing list pgsql-performance

From Tom Lane
Subject Re: Re: Adding foreign key constraint holds exclusive lock for too long (on production database)
Date
Msg-id 22670.1383229188@sss.pgh.pa.us
Whole thread Raw
In response to Re: Re: Adding foreign key constraint holds exclusive lock for too long (on production database)  (Ben Hoyt <benhoyt@gmail.com>)
Responses Re: Re: Adding foreign key constraint holds exclusive lock for too long (on production database)  (Ben Hoyt <benhoyt@gmail.com>)
List pgsql-performance
Ben Hoyt <benhoyt@gmail.com> writes:
>> It appears the possible explanations for Ben's problem are:
>> 1. For some reason this query is a lot slower than the one he came up
>> with;

> Anyway, it's definitely #1 that's happening, as I build the
> RI_Initial_Check() query by hand, and it takes just as long as the ADD
> CONSTRAINT.

Huh.  Maybe an optimizer failing?  Could we see the full text of both
queries and EXPLAIN ANALYZE results for them?

> So I guess this is really a side effect of the quirky way we're
> dumping and restoring only one schema, and dropping/re-adding
> constraints on deployment because of this. Is this a really strange
> thing to do -- deploying only one schema (the "static" data) and
> dropping/re-adding constraints -- or are there better practices here?

Doesn't seem unreasonable.  One thought is that maybe you need to insert a
manual ANALYZE after reloading the data?

            regards, tom lane


pgsql-performance by date:

Previous
From: Ben Hoyt
Date:
Subject: Re: Re: Adding foreign key constraint holds exclusive lock for too long (on production database)
Next
From:
Date:
Subject: Update Trigger latency utilizing the IS DISTINCT FROM syntax