If you used CONCURRENTLY while creating your index, there is a possibility that you hit a bug, which was fixed with 14.4.
However, if you have any indexes that were created using the CONCURRENTLY option under 14.X, you should re-index them after updating. See the first changelog entry below.
On Sat, 29 Oct 2022, 14:21 abbas alizadeh, <ramkly@yahoo.com> wrote:
Hi all. I faced the same issue last week. We had duplicated records on primary key. Postgresql version is 14.4
Sent from my iPhone
> On 29 Oct 2022, at 4:18 AM, Erik Wienhold <ewie@ewie.name> wrote: > > >> >> On 28/10/2022 22:50 CEST Scott Ribe <scott_ribe@elevated-dev.com> wrote: >> >> A corrupted index could allow that to happen by failing to catch the duplicate >> insert. I suppose it might also be able to cause the same row to be returned >> multiple times--although I have personally only ever seen corrupted indexes >> cause rows to not be found. > > I think it should be possible to tell those two cases apart by looking at system > column ctid. The ctid should be the same for duplicate rows if the same row is > found multiple times in the index. Different ctid if the corrupted index > allowed INSERT with duplicates. > > -- > Erik > >