I removed the duplicates and then immediately reindexed. All is well. The vacuum analyze on the postgres database works now too. Thanks.
It is good to know the pg_statistic table can be emptied in case this ever happens again.
Paul
Tom Lane wrote:
"Paul B. Anderson" <paul.a@pnlassociates.com> writes:
I did delete exactly one of each of these using ctid and the query then
shows no duplicates. But, the problem comes right back in the next
database-wide vacuum.
That's pretty odd --- I'm inclined to suspect index corruption.
I also tried reindexing the table.
Get rid of the duplicates (actually, I'd just blow away all the
pg_statistic entries for each of these tables) and *then* reindex.
Then re-analyze and see what happens.
Worst case you could just delete everything in pg_statistic, reindex it,
do a database-wide ANALYZE to repopulate it. By definition there's not
any original data in that table...
regards, tom lane
.