> On Jan 27, 2026, at 15:59, Chao Li <[email protected]> wrote:
> 
> 
> 
>> On Jan 27, 2026, at 15:39, Michael Paquier <[email protected]> wrote:
>> 
>> On Tue, Jan 27, 2026 at 01:13:32PM +0800, Chao Li wrote:
>>> I found this bug while working on a related patch [1].
>>> 
>>> When ALTER TABLE ... ALTER COLUMN TYPE causes an index rebuild, and
>>> that index is used as REPLICA IDENTITY on a partitioned table, the
>>> replica identity marking on partitions can be silently lost after the
>>> rebuild.
>> 
>> I am slightly confused by the tests included in the proposed patch.
>> On HEAD, if I undo the proposed changes of tablecmds.c, the tests
>> pass.  If I run the tests of the patch with the changes of
>> tablecmds.c, the tests also pass.  
> 
> Oops, that isn’t supposed to be so. I’ll check the test.
> 

Okay, I see the problem is here:
```
+CREATE UNIQUE INDEX test_replica_identity_partitioned_pkey ON 
test_replica_identity_partitioned (id);
```

I missed to add column “val” into the index, so that alter type of val didn’t 
cause index rebuild.

Ideally, it’s better to also verify that index OIDs should have changed before 
and after alter column type, but I haven’t figured out how to do so. Do you 
have an idea?

Please see v2, the test should fail on master now.

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/




Attachment: v2-0001-tablecmds-fix-bug-where-index-rebuild-loses-repli.patch
Description: Binary data

Reply via email to