Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist - Mailing list pgsql-bugs

From Andres Freund
Subject Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist
Date
Msg-id 201012051358.22813.andres@anarazel.de
Whole thread Raw
In response to Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist  (Andres Freund <andres@anarazel.de>)
Responses Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist  (Martin Atukunda <matlads@gmail.com>)
List pgsql-bugs
On Sunday 05 December 2010 13:29:35 Andres Freund wrote:
> On Sunday 05 December 2010 13:07:23 Martin Atukunda wrote:
> > > Due to the wonders of MVCC the old row is still available in the heap.
> > > Best read the docs about what MVCC means. And as pg's indexes don't
> > > care about visibility it will still try to index the "old" row.
> >
> > Thanks andreas,
> >
> > so, basically, the only way out of this would be to:
> >
> > 1. copy out all the rows
> > 2. truncate the Tables
> > 3. then create the index
> > 4. copy in the rows
>
> Something like:
>
> ALTER TABLE t ALTER apps TYPE text[];
> ALTER TABLE t ALTER apps TYPE bigint[] USING apps::bigint[];
On further thought the second one ought to be enough.

Andres

pgsql-bugs by date:

Previous
From: Andres Freund
Date:
Subject: Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist
Next
From: Tom Lane
Date:
Subject: Re: BUG #5784: CREATE INDEX USING GIN complains about array containing null values yet none exist