Re: BUG #19351: in pg18.1,when not null exists in the table , and add constraint problem.

From: Srinath Reddy Sadipiralla <srinath2133(at)gmail(dot)com>
To: msdnchina(at)163(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #19351: in pg18.1,when not null exists in the table , and add constraint problem.
Date: 2025-12-10 16:02:46
Message-ID: CAFC+b6pA+zGmt_WoEMqHNRaAGVOU7KPyUuAFKnEdzeLW1KzzjQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi,

On Wed, Dec 10, 2025 at 8:52 PM PG Bug reporting form <
noreply(at)postgresql(dot)org> wrote:

> The following bug has been logged on the website:
>
> Bug reference: 19351
> Logged by: yanliang lei
> Email address: msdnchina(at)163(dot)com
> PostgreSQL version: 18.1
> Operating system: Linux
> Description:
>
> postgres=# create table test_null_20251210(c1 int not null,c2 text);
> CREATE TABLE
> postgres=# \d+ test_null_20251210
> 数据表 "public.test_null_20251210"
> 栏位 | 类型 | 校对规则 | 可空的 | 预设 | 存储 | 压缩 | 统计目标 | 描述
>
> ------+---------+----------+----------+------+----------+------+----------+------
> c1 | integer | | not null | | plain | | |
> c2 | text | | | | extended | | |
> Not-null constraints:
> "test_null_20251210_c1_not_null" NOT NULL "c1"
> 访问方法 heap
>
> postgres=# alter table test_null_20251210 add constraint xyzxyz not null
> c1;
> ALTER TABLE
> <<<--- above alter table statement should report 'not null constraint
> exists',
> <<<---- Maybe this problem is a bug ?
> postgres=# \d+ test_null_20251210
> 数据表 "public.test_null_20251210"
> 栏位 | 类型 | 校对规则 | 可空的 | 预设 | 存储 | 压缩 | 统计目标 | 描述
>
> ------+---------+----------+----------+------+----------+------+----------+------
> c1 | integer | | not null | | plain | | |
> c2 | text | | | | extended | | |
> Not-null constraints:
> "test_null_20251210_c1_not_null" NOT NULL "c1"
> 访问方法 heap
>
> postgres=# select version();
> version
>
> -----------------------------------------------------------------------------------
> PostgreSQL 18.1 on aarch64-unknown-linux-gnu, compiled by gcc (GCC) 7.3.0,
> 64-bit
> (1 行记录)
>
> postgres=#
>
>
It's an expected behavior; you can check here [0],
but i am curious ,why it's not treated as normal
constraint and why we are not throwing an error
like the constraint already exists?

[0]
https://www.postgresql.org/docs/18/ddl-alter.html?utm_source=chatgpt.com#DDL-ALTER-ADDING-A-CONSTRAINT

--
Thanks,
Srinath Reddy Sadipiralla
EDB: https://www.enterprisedb.com/

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2025-12-10 16:07:01 Re: BUG #19350: Short circuit optimization missed when running sqlscriptes in JDBC
Previous Message Vijay Reddy 2025-12-10 15:50:59 Re: BUG #19339: odbc_fdw extension, Not able to read data from foreign tables