--- Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Hoo, I'm surprised no one noticed this during 7.4
> development/testing.
> The problem applies for any datatype that requires
> double alignment,
> which includes int8, float8, and timestamp as well
> as most of the
> geometric types. pg_statistic is declared as using
> type "anyarray",
> and this type really needs to be marked as requiring
> double alignment
> so that arrays of double-aligned datatypes will come
> out correctly.
>
> The correct source fix is a one-line change in
> pg_type.h, but this will
> not propagate into existing databases without an
> initdb. It looks like
> what you'd need to do to fix an existing database is
>
> -- clear out broken data in pg_statistic
> DELETE FROM pg_statistic;
> -- this should update 1 row:
> UPDATE pg_type SET typalign = 'd' WHERE oid = 2277;
> -- this should update 6 rows:
> UPDATE pg_attribute SET attalign = 'd' WHERE
> atttypid = 2277;
> -- might be a good idea to start a fresh backend at
> this point
> -- repopulate pg_statistic
> ANALYZE;
>
> Ugh :-(
>
> regards, tom lane
Works for me. Thanks!
__________________________________
Do you Yahoo!?
Get better spam protection with Yahoo! Mail.
http://antispam.yahoo.com/tools