PG 7.4: duplicate rows in violation of unique constraint

From: Steve Lane <slane(at)soliantconsulting(dot)com>
To: <pgsql-admin(at)postgresql(dot)org>
Cc: Jesse LaVere <jlavere(at)soliantconsulting(dot)com>
Subject: PG 7.4: duplicate rows in violation of unique constraint
Date: 2005-02-10 00:07:32
Message-ID: BE3001E4.12B48%slane@soliantconsulting.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

All:

Puzzling PG 7.4 behaviors. Began yesterday, running under RedHat ES 2.1.

First symptom were many query failures, along with the message that a server
process had crashed, possibly corrupting shared memory. These messages kept
coming. I shut down the postmaster, and did ipcclean.

Started postmaster again, but then found index problems with certain tables.
Records that we knew were there would not be found via index scan queries.
We then tried to reindex, and that failed as follows:

DETAIL: Table contains duplicated values.

This on a single column with a unique constraint, populated via a sequence!

We searched for and found the duplicates and pulled them into a separate
table, deleted from the original table, then reindexed.

Looking at the duplicates, they look for all the world like multiple copies
of the same row. Clearly the same record, but in each case the one with the
later timestamp had "more" data. So we picked the latest records by
timestamp and brought them back in.

We've found similar instances on other indexes, but let me start there.

Any ideas? Can MVCC "leak" stale rows back into the "live" space?

-- sgl

--------
Steve Lane
Vice President
Soliant Consulting, Inc.
(312) 850-3830 (V)
(312) 850-3930 (F)
slane(at)soliantconsulting(dot)com

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Joshua D. Drake 2005-02-10 01:26:12 Re: PG 7.4: duplicate rows in violation of unique constraint
Previous Message Gavin M. Roy 2005-02-09 19:41:19 Re: PHP/PDO Database Abstraction Layer