| From: | Jeff Frost <jeff(at)frostconsultingllc(dot)com> | 
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
| Cc: | pgsql-performance(at)postgresql(dot)org | 
| Subject: | Re: Index usage problem on 8.3.3 | 
| Date: | 2008-10-31 01:22:19 | 
| Message-ID: | 490A5DCB.9060403@frostconsultingllc.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-performance | 
Tom Lane wrote:
> Okay.  What that means is that the indexes were created on data that had
> already been inserted and updated to some extent, resulting in
> HOT-update chains that turned out to be illegal for the new indexes.
> The way we deal with this is to mark the indexes as not usable by any
> query that can still see the dead HOT-updated tuples.
>
> Your best bet for dodging the problem is probably to break the operation
> into two transactions, if that's possible.  INSERT and UPDATE in the
> first xact, create the indexes at the start of the second.  (Hmm ...
> I'm not sure if that's sufficient if there are other concurrent
> transactions; but it's certainly necessary.)  Another possibility is
> to create the indexes just after data load, before you start updating
> the columns they're on.
>
> 	
Thanks Tom!
Any idea why I don't see it on 8.3.4?
-- 
Jeff Frost, Owner 	<jeff(at)frostconsultingllc(dot)com>
Frost Consulting, LLC 	http://www.frostconsultingllc.com/
Phone: 916-647-6411	FAX: 916-405-4032
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2008-10-31 01:27:58 | Re: Index usage problem on 8.3.3 | 
| Previous Message | Tom Lane | 2008-10-31 01:14:17 | Re: Index usage problem on 8.3.3 |