From: | Peter Geoghegan <pg(at)bowt(dot)ie> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | CONCHY Elisabeth <elisabeth(dot)conchy(at)dgfip(dot)finances(dot)gouv(dot)fr>, Henri KY <sideuxb-ky(dot)consultant(at)dgfip(dot)finances(dot)gouv(dot)fr>, PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: BUG #14874: Dublicate values in primary key |
Date: | 2017-10-28 02:06:47 |
Message-ID: | CAH2-WzkA8jkWKAW1xgMHeTEEkFipfB8bkun=2kOpcvgfoHoF+g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On Fri, Oct 27, 2017 at 4:01 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> So ... have there been any server crashes lately?
>
> In any case, my advice is to take a hard look at whether your storage
> stack honors fsync all the way down. That won't get you out of the
> immediate problem --- as Peter said, manual cleanup of the data and
> then reindexing the indexes seems like your only way out of that.
> But it might save you from a recurrence.
I agree with your conclusion, but I still think that it's slightly
ambiguous. There didn't seem to be an issue with sequences going
backwards -- the actual complaint was about there being multiple
versions of the same logical row visible simultaneously (sequences
were mentioned in passing). This is probably a case of tuples within a
HOT chain experiencing some kind of "resurrection". Though that in
itself doesn't prove much of anything.
The latest example of a bug that made "tuple resurrection" possible is
the recent "freeze-the-dead" bug, but I can recall a couple of other
bugs in the history of 9.4 with the same symptom. Of course, storage
problems can also cause this symptom, and if you're using foreign
keys, chances are good that storage infelicities will result in
corruption with symptoms similar to the corruption caused by various
Multixact bugs (e.g., resurrected rows, VACUUM reporting apparent
MultiXactId wraparound, etc). That's why these symptoms don't tell us
much.
I don't want to make too much of this. It's clear that being on such
an old point release is needlessly risky, and it's also clear that the
OP has work to do to validate the reliability of storage as part of a
disaster recovery effort.
--
Peter Geoghegan
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2017-10-28 03:14:56 | Re: BUG #14876: Segmentation fault with JSONB column used in store proc that gets used by view and later altered |
Previous Message | jan.przemyslaw.wojcik | 2017-10-28 01:10:36 | BUG #14878: pg_trgm - word_similarity() inconsistent with description. |