From 16f5557fb08d0ce5f41d509ef3fb475a10eedb75 Mon Sep 17 00:00:00 2001 From: Shlok Kyal Date: Mon, 10 Nov 2025 13:48:28 +0530 Subject: [PATCH v2] Remove unused n->pubobjects assignment for CREATE PUBLICATION .. ALL TABLES/SEQUENCES For grammar: CREATE PUBLICATION name FOR pub_obj_type_list opt_definition "n->pubobjects" is assigned but later in the code it is not used. It is used in function "ObjectsInPublicationToOids" and we donot require it for ALL TABLES or ALL SEQUENCES publication. This patch removes the assignment of "n->pubobjects" for above grammar and also renames 'pub_obj_type' to 'pub_all_obj_type' for better clarity. --- src/backend/parser/gram.y | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 57fe0186547..c3a0a354a9c 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -453,7 +453,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); transform_element_list transform_type_list TriggerTransitions TriggerReferencing vacuum_relation_list opt_vacuum_relation_list - drop_option_list pub_obj_list pub_obj_type_list + drop_option_list pub_obj_list pub_all_obj_type_list %type returning_clause %type returning_option @@ -10731,9 +10731,9 @@ AlterOwnerStmt: ALTER AGGREGATE aggregate_with_argtypes OWNER TO RoleSpec * * CREATE PUBLICATION name [WITH options] * - * CREATE PUBLICATION FOR ALL pub_obj_type [, ...] [WITH options] + * CREATE PUBLICATION FOR ALL pub_all_obj_type [, ...] [WITH options] * - * pub_obj_type is one of: + * pub_all_obj_type is one of: * * TABLES * SEQUENCES @@ -10756,12 +10756,11 @@ CreatePublicationStmt: n->options = $4; $$ = (Node *) n; } - | CREATE PUBLICATION name FOR pub_obj_type_list opt_definition + | CREATE PUBLICATION name FOR pub_all_obj_type_list opt_definition { CreatePublicationStmt *n = makeNode(CreatePublicationStmt); n->pubname = $3; - n->pubobjects = (List *) $5; preprocess_pub_all_objtype_list($5, &n->for_all_tables, &n->for_all_sequences, yyscanner); @@ -10892,9 +10891,9 @@ PublicationAllObjSpec: } ; -pub_obj_type_list: PublicationAllObjSpec +pub_all_obj_type_list: PublicationAllObjSpec { $$ = list_make1($1); } - | pub_obj_type_list ',' PublicationAllObjSpec + | pub_all_obj_type_list ',' PublicationAllObjSpec { $$ = lappend($1, $3); } ; -- 2.34.1