Re: More tests with USING INDEX replident and dropped indexes
Rahila Syed <rahila.syed@2ndquadrant.com>
From: Rahila Syed <rahila.syed@2ndquadrant.com>
To: Michael Paquier <michael@paquier.xyz>,
Euler Taveira <euler.taveira@2ndquadrant.com>
Cc: Masahiko Sawada <masahiko.sawada@2ndquadrant.com>,
Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2020-08-19T12:03:36Z
Lists: pgsql-hackers
Hi, I couldn't test the patch as it does not apply cleanly on master. Please find below some review comments: 1. Would it better to throw a warning at the time of dropping the REPLICA IDENTITY index that it would also drop the REPLICA IDENTITY of the parent table? 2. CCI is used after calling SetRelationReplIdent from index_drop() but not after following call relation_mark_replica_identity(Relation rel, char ri_type, Oid indexOid, bool is_internal) + /* update relreplident if necessary */ + SetRelationReplIdent(RelationGetRelid(rel), ri_type); 3. I think the former variable names `pg_class_tuple` and `pg_class_form`provided better clarity + HeapTuple tuple; + Form_pg_class classtuple; > - relreplident is switched to REPLICA_IDENTITY_NOTHING, which is the > behavior we have now after an index is dropped, even if there is a > primary key. 4. I am not aware of the reason of the current behavior, however it seems better to switch to REPLICA_IDENTITY_DEFAULT. Can't think of a reason why user would not be fine with using primary key as replica identity when replica identity index is dropped Thank you,
Commits
-
Add regression tests for REPLICA IDENTITY with dropped indexes
- fe7fd4e9613f 14.0 landed