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.96) (envelope-from ) id 1vPsHA-0001zS-23 for pgsql-general@arkaria.postgresql.org; Mon, 01 Dec 2025 01:00:24 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vPsGA-00HJFr-0o for pgsql-general@arkaria.postgresql.org; Mon, 01 Dec 2025 00:59:22 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vPsG9-00HJFh-2W for pgsql-general@lists.postgresql.org; Mon, 01 Dec 2025 00:59:22 +0000 Received: from mail-il1-x12a.google.com ([2607:f8b0:4864:20::12a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vPsG7-002USQ-1q for pgsql-general@postgresql.org; Mon, 01 Dec 2025 00:59:21 +0000 Received: by mail-il1-x12a.google.com with SMTP id e9e14a558f8ab-433791d45f5so15786595ab.0 for ; Sun, 30 Nov 2025 16:59:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ridewithvia.com; s=google; t=1764550758; x=1765155558; darn=postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=ylnfdCeGwjgPSM0scazu1f82giuCssLYnOfbnVbogyM=; b=OaaDsgnSTupEsayQ8GKPNR4l4ewdbSF3tUxG4NYkAm+WrdRKsiZWVAfIi0FdhL+9Hg bL+RgoJvD0JLp1TJ1oKZOtoey5GEj13G021xVICyCijRA/Xsf4ak/ps7vJSp+TCMdTjG pLVQv4Mfj59ihNYD1C9LCsrsFPJA3CzT5xA0U= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764550758; x=1765155558; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ylnfdCeGwjgPSM0scazu1f82giuCssLYnOfbnVbogyM=; b=dQwP0DkOpPdHWDlO0PX6TfuOzQbhtwa2cIc3DFqXpVnzsDD0Vh/S47kQTe1+pi7bhZ wFTKhUM37zuIfzsDcFxe8rK7NWG6YbIyFxpIuOTbF9RRt5iAKWo7/LYSEhtfc1YcIqO7 CiiylpRw69c7rQnCVKEyrHpXFvv9Nz9Zm2snvZhd9GZxnMlKBcboy7GXCs5WLxYbm2lC 92f/I0QzUdawkkcTXw1bfg/8xk6jZ26UPWHHapTBII2RDtjcpv3uGV1mKjHgxl+BREbO ZjSSXdAASQYJuEtPWbbZUKdFHQ99KXY4xlAkvUbh1s9YTPqQukx2bAVmOvbwbr5o2jRr GeVQ== X-Gm-Message-State: AOJu0Yw3D+Mk8Hij4SEb/prZM/AQ5EV6hzeFxBQcWFNtnggupkTm+M5K TL6ZFujctNdVUp2A+uFLFCKTazUDhkuZesPE+oDn6IsMJJ7wah+C5Dfz5y7jr+KZ6S4nMb6S+E/ hw4Nnx5bN0GWRyk4p9ebQofbubmxpF2Js+7TuqzjJ+xQMPiAl8aO7dtYvPLkXGkJUJri89UI3Pi qyKSNHEQC7xRmBICYBeZRXFxICxcAScYtkTvuqrCiqVQ3Y X-Gm-Gg: ASbGncu3679ouPH+pjuMxf9Tv7k2iJDbudJ4m8j3HFyHutfJCtEgsD6P95q4AMdssuz /sJatyoOMJLndv/28NW5cKhrRQz2OridWrjHfFT8uN60cbG+xTUN6WsOroDbESRCJR88swOvBLo 20x9K9u2lQ5XhUCY+nvxvrXZwzOWcwm62RLch/PsUZTgslJQrRfhIvrCblsgYv7GhFjPZRq5Dhm CA6q+muUpG2gfpsE+shA9x6lUT51kLrKjfpbgBvf+93upFUhoYQ9o+5UUfUBDKVsFDNwRNi6YAn a+VfVw== X-Google-Smtp-Source: AGHT+IEnI7xHnHsFpnTq5TPoKa6l4RH7MtXR9xja30x2bJ6OgYLm9xkL+TsYF6Q+2HO7o67YrQXC8mKtbPD8fQe0d5o= X-Received: by 2002:a05:6e02:12ea:b0:434:a86a:f162 with SMTP id e9e14a558f8ab-435b98631camr280786055ab.16.1764550758195; Sun, 30 Nov 2025 16:59:18 -0800 (PST) MIME-Version: 1.0 From: Stuart Campbell Date: Mon, 1 Dec 2025 11:59:07 +1100 X-Gm-Features: AWmQ_blKVKoT8dqlm7RHQUi-Fa-TDsQgRXif_81sMSldEQ3MahyUIhjButlzFzs Message-ID: Subject: Check whether a NOT NULL check constraint has been validated To: pgsql-general@postgresql.org Content-Type: multipart/alternative; boundary="0000000000002175b60644d97dca" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000002175b60644d97dca Content-Type: text/plain; charset="UTF-8" Hello, I have several NOT NULL check constraints in my schema that were originally added as NOT VALID. I would like to determine whether they have all since been validated, or not. I thought maybe pg_constraint.convalidated might help, but it seems like the version of Postgres I'm using (16) doesn't store not null constraints in that table. And even in later versions, maybe it doesn't hold the information I need. Is there another way to discover this? -- This communication and any attachments may contain confidential information and are intended to be viewed only by the intended recipients. If you have received this message in error, please notify the sender immediately by replying to the original message and then delete all copies of the email from your systems. --0000000000002175b60644d97dca Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

I have several NOT NU= LL check constraints in my schema that were originally added as NOT VALID. = I would like to determine whether they have all since been validated, or no= t.

I thought maybe pg_constraint.convalidated migh= t help, but it seems like the version of Postgres I'm using (16) doesn&= #39;t store not null constraints in that table. And even in later versions,= maybe it doesn't hold the information I need.

Is there another way to discover this?

This communication and any attachments may contain confidential inform= ation and are intended to be viewed only by the intended recipients. If you= have received this message in error, please notify the sender immediately = by replying to the original message and then delete all copies of the email= from your systems.


--0000000000002175b60644d97dca--