Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tS2QS-00DU42-Lz for pgsql-bugs@arkaria.postgresql.org; Sun, 29 Dec 2024 23:10:25 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tS2QR-008QhA-VJ for pgsql-bugs@arkaria.postgresql.org; Sun, 29 Dec 2024 23:10:23 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tS2QR-008Qh0-Mt for pgsql-bugs@lists.postgresql.org; Sun, 29 Dec 2024 23:10:23 +0000 Received: from sss.pgh.pa.us ([68.162.161.243]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tS2QO-002FlP-CZ for pgsql-bugs@lists.postgresql.org; Sun, 29 Dec 2024 23:10:22 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 4BTNAJx93724196; Sun, 29 Dec 2024 18:10:19 -0500 From: Tom Lane To: talmoshe24@gmail.com cc: pgsql-bugs@lists.postgresql.org Subject: Re: BUG #18756: Postgres corruption In-reply-to: <18756-dedadb77ca3668b8@postgresql.org> References: <18756-dedadb77ca3668b8@postgresql.org> Comments: In-reply-to PG Bug reporting form message dated "Sun, 29 Dec 2024 18:49:34 +0000" MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-ID: <3724194.1735513819.1@sss.pgh.pa.us> Content-Transfer-Encoding: quoted-printable Date: Sun, 29 Dec 2024 18:10:19 -0500 Message-ID: <3724195.1735513819@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk PG Bug reporting form writes: > We saw a corruption in 3 different environments in one of the unique ind= exes > (named =E2=80=9Cnpn=E2=80=9D) in =E2=80=9Cfiles=E2=80=9D table. > It seems as if not all the rows (that should be part of this index) in t= he > table are indexed, and therefore =E2=80=9Cduplicated=E2=80=9D rows (rows= that violates the > index constraint) are allowed to be inserted to DB. Are any of the indexed columns of string types (text, varchar, etc)? And have you upgraded the underlying OS since creating the index? If so, you've likely been bit by locale changes. See https://wiki.postgresql.org/wiki/Locale_data_changes regards, tom lane