Re: Wrong result when enable_partitionwise_join is on if collation of PartitionKey and Column is different. - Mailing list pgsql-hackers

From Tender Wang
Subject Re: Wrong result when enable_partitionwise_join is on if collation of PartitionKey and Column is different.
Date
Msg-id CAHewXN=sGCF7cp3r+8PyZXP0TT+Q1imoEe-7Z-0Sxxb76eWAXg@mail.gmail.com
Whole thread Raw
Responses Re: Wrong result when enable_partitionwise_join is on if collation of PartitionKey and Column is different.
List pgsql-hackers


Tender Wang <tndrwang@gmail.com> 于2024年10月23日周三 21:48写道:
Hi all,

I find another issue as $SUBJECT when I work on [1].

When I continue to work on this, I find below issue. But I'm not sure whether it is a bug.

postgres=# create table part_index(a text primary key) partition by list ( a collate "POSIX");
ERROR:  unique constraint on partitioned table must include all partitioning columns
DETAIL:  PRIMARY KEY constraint on table "part_index" lacks column "a" which is part of the partition key.
postgres=# create table part_index(a text) partition by list ( a collate "POSIX");
CREATE TABLE
postgres=# alter table part_index add primary key (a);
ERROR:  unique constraint on partitioned table must include all partitioning columns
DETAIL:  PRIMARY KEY constraint on table "part_index" lacks column "a" which is part of the partition key.

It seems we can't create a primary key if the collation is different between columnDef and PartitionKey.

By the way, I think the error message is misleading to users.
ostgres=# alter table part_index add primary key (a);
ERROR:  unique constraint on partitioned table must include all partitioning columns
DETAIL:  PRIMARY KEY constraint on table "part_index" lacks column "a" which is part of the partition key.



--
Thanks,
Tender Wang

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Using Expanded Objects other than Arrays from plpgsql
Next
From: Dilip Kumar
Date:
Subject: Re: Can rs_cindex be < 0 for bitmap heap scans?