In dbcommands.c function createdb(), there are several sets of very similar local variable names, such as "downer" and "dbowner", which is very confusing and error-prone. The first set are the DefElem nodes from the parser, the second set are the local variables with the values extracted from them. This patch renames the former to "ownerEl" and so on, similar to collationcmds.c and typecmds.c, to improve clarity.
From d6a13085fe4431eefe3969c33539dbf11c3f1caa Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <[email protected]>
Date: Mon, 22 Apr 2024 20:22:27 +0200
Subject: [PATCH] Variable renaming in dbcommands.c

There were several sets of very similar local variable names, such as
"downer" and "dbowner", which was very confusing and error-prone.
Rename the former to "ownerEl" and so on, similar to collationcmds.c
and typecmds.c.
---
 src/backend/commands/dbcommands.c | 178 +++++++++++++++---------------
 1 file changed, 89 insertions(+), 89 deletions(-)

diff --git a/src/backend/commands/dbcommands.c 
b/src/backend/commands/dbcommands.c
index 7026352bc99..7c92c3463b6 100644
--- a/src/backend/commands/dbcommands.c
+++ b/src/backend/commands/dbcommands.c
@@ -704,22 +704,22 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
        Oid                     dboid = InvalidOid;
        Oid                     datdba;
        ListCell   *option;
-       DefElem    *dtablespacename = NULL;
-       DefElem    *downer = NULL;
-       DefElem    *dtemplate = NULL;
-       DefElem    *dencoding = NULL;
-       DefElem    *dlocale = NULL;
-       DefElem    *dbuiltinlocale = NULL;
-       DefElem    *dcollate = NULL;
-       DefElem    *dctype = NULL;
-       DefElem    *diculocale = NULL;
-       DefElem    *dicurules = NULL;
-       DefElem    *dlocprovider = NULL;
-       DefElem    *distemplate = NULL;
-       DefElem    *dallowconnections = NULL;
-       DefElem    *dconnlimit = NULL;
-       DefElem    *dcollversion = NULL;
-       DefElem    *dstrategy = NULL;
+       DefElem    *tablespacenameEl = NULL;
+       DefElem    *ownerEl = NULL;
+       DefElem    *templateEl = NULL;
+       DefElem    *encodingEl = NULL;
+       DefElem    *localeEl = NULL;
+       DefElem    *builtinlocaleEl = NULL;
+       DefElem    *collateEl = NULL;
+       DefElem    *ctypeEl = NULL;
+       DefElem    *iculocaleEl = NULL;
+       DefElem    *icurulesEl = NULL;
+       DefElem    *locproviderEl = NULL;
+       DefElem    *istemplateEl = NULL;
+       DefElem    *allowconnectionsEl = NULL;
+       DefElem    *connlimitEl = NULL;
+       DefElem    *collversionEl = NULL;
+       DefElem    *strategyEl = NULL;
        char       *dbname = stmt->dbname;
        char       *dbowner = NULL;
        const char *dbtemplate = NULL;
@@ -746,93 +746,93 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
 
                if (strcmp(defel->defname, "tablespace") == 0)
                {
-                       if (dtablespacename)
+                       if (tablespacenameEl)
                                errorConflictingDefElem(defel, pstate);
-                       dtablespacename = defel;
+                       tablespacenameEl = defel;
                }
                else if (strcmp(defel->defname, "owner") == 0)
                {
-                       if (downer)
+                       if (ownerEl)
                                errorConflictingDefElem(defel, pstate);
-                       downer = defel;
+                       ownerEl = defel;
                }
                else if (strcmp(defel->defname, "template") == 0)
                {
-                       if (dtemplate)
+                       if (templateEl)
                                errorConflictingDefElem(defel, pstate);
-                       dtemplate = defel;
+                       templateEl = defel;
                }
                else if (strcmp(defel->defname, "encoding") == 0)
                {
-                       if (dencoding)
+                       if (encodingEl)
                                errorConflictingDefElem(defel, pstate);
-                       dencoding = defel;
+                       encodingEl = defel;
                }
                else if (strcmp(defel->defname, "locale") == 0)
                {
-                       if (dlocale)
+                       if (localeEl)
                                errorConflictingDefElem(defel, pstate);
-                       dlocale = defel;
+                       localeEl = defel;
                }
                else if (strcmp(defel->defname, "builtin_locale") == 0)
                {
-                       if (dbuiltinlocale)
+                       if (builtinlocaleEl)
                                errorConflictingDefElem(defel, pstate);
-                       dbuiltinlocale = defel;
+                       builtinlocaleEl = defel;
                }
                else if (strcmp(defel->defname, "lc_collate") == 0)
                {
-                       if (dcollate)
+                       if (collateEl)
                                errorConflictingDefElem(defel, pstate);
-                       dcollate = defel;
+                       collateEl = defel;
                }
                else if (strcmp(defel->defname, "lc_ctype") == 0)
                {
-                       if (dctype)
+                       if (ctypeEl)
                                errorConflictingDefElem(defel, pstate);
-                       dctype = defel;
+                       ctypeEl = defel;
                }
                else if (strcmp(defel->defname, "icu_locale") == 0)
                {
-                       if (diculocale)
+                       if (iculocaleEl)
                                errorConflictingDefElem(defel, pstate);
-                       diculocale = defel;
+                       iculocaleEl = defel;
                }
                else if (strcmp(defel->defname, "icu_rules") == 0)
                {
-                       if (dicurules)
+                       if (icurulesEl)
                                errorConflictingDefElem(defel, pstate);
-                       dicurules = defel;
+                       icurulesEl = defel;
                }
                else if (strcmp(defel->defname, "locale_provider") == 0)
                {
-                       if (dlocprovider)
+                       if (locproviderEl)
                                errorConflictingDefElem(defel, pstate);
-                       dlocprovider = defel;
+                       locproviderEl = defel;
                }
                else if (strcmp(defel->defname, "is_template") == 0)
                {
-                       if (distemplate)
+                       if (istemplateEl)
                                errorConflictingDefElem(defel, pstate);
-                       distemplate = defel;
+                       istemplateEl = defel;
                }
                else if (strcmp(defel->defname, "allow_connections") == 0)
                {
-                       if (dallowconnections)
+                       if (allowconnectionsEl)
                                errorConflictingDefElem(defel, pstate);
-                       dallowconnections = defel;
+                       allowconnectionsEl = defel;
                }
                else if (strcmp(defel->defname, "connection_limit") == 0)
                {
-                       if (dconnlimit)
+                       if (connlimitEl)
                                errorConflictingDefElem(defel, pstate);
-                       dconnlimit = defel;
+                       connlimitEl = defel;
                }
                else if (strcmp(defel->defname, "collation_version") == 0)
                {
-                       if (dcollversion)
+                       if (collversionEl)
                                errorConflictingDefElem(defel, pstate);
-                       dcollversion = defel;
+                       collversionEl = defel;
                }
                else if (strcmp(defel->defname, "location") == 0)
                {
@@ -868,9 +868,9 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
                }
                else if (strcmp(defel->defname, "strategy") == 0)
                {
-                       if (dstrategy)
+                       if (strategyEl)
                                errorConflictingDefElem(defel, pstate);
-                       dstrategy = defel;
+                       strategyEl = defel;
                }
                else
                        ereport(ERROR,
@@ -879,17 +879,17 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
                                         parser_errposition(pstate, 
defel->location)));
        }
 
-       if (downer && downer->arg)
-               dbowner = defGetString(downer);
-       if (dtemplate && dtemplate->arg)
-               dbtemplate = defGetString(dtemplate);
-       if (dencoding && dencoding->arg)
+       if (ownerEl && ownerEl->arg)
+               dbowner = defGetString(ownerEl);
+       if (templateEl && templateEl->arg)
+               dbtemplate = defGetString(templateEl);
+       if (encodingEl && encodingEl->arg)
        {
                const char *encoding_name;
 
-               if (IsA(dencoding->arg, Integer))
+               if (IsA(encodingEl->arg, Integer))
                {
-                       encoding = defGetInt32(dencoding);
+                       encoding = defGetInt32(encodingEl);
                        encoding_name = pg_encoding_to_char(encoding);
                        if (strcmp(encoding_name, "") == 0 ||
                                pg_valid_server_encoding(encoding_name) < 0)
@@ -897,39 +897,39 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
                                                
(errcode(ERRCODE_UNDEFINED_OBJECT),
                                                 errmsg("%d is not a valid 
encoding code",
                                                                encoding),
-                                                parser_errposition(pstate, 
dencoding->location)));
+                                                parser_errposition(pstate, 
encodingEl->location)));
                }
                else
                {
-                       encoding_name = defGetString(dencoding);
+                       encoding_name = defGetString(encodingEl);
                        encoding = pg_valid_server_encoding(encoding_name);
                        if (encoding < 0)
                                ereport(ERROR,
                                                
(errcode(ERRCODE_UNDEFINED_OBJECT),
                                                 errmsg("%s is not a valid 
encoding name",
                                                                encoding_name),
-                                                parser_errposition(pstate, 
dencoding->location)));
+                                                parser_errposition(pstate, 
encodingEl->location)));
                }
        }
-       if (dlocale && dlocale->arg)
+       if (localeEl && localeEl->arg)
        {
-               dbcollate = defGetString(dlocale);
-               dbctype = defGetString(dlocale);
-               dblocale = defGetString(dlocale);
+               dbcollate = defGetString(localeEl);
+               dbctype = defGetString(localeEl);
+               dblocale = defGetString(localeEl);
        }
-       if (dbuiltinlocale && dbuiltinlocale->arg)
-               dblocale = defGetString(dbuiltinlocale);
-       if (dcollate && dcollate->arg)
-               dbcollate = defGetString(dcollate);
-       if (dctype && dctype->arg)
-               dbctype = defGetString(dctype);
-       if (diculocale && diculocale->arg)
-               dblocale = defGetString(diculocale);
-       if (dicurules && dicurules->arg)
-               dbicurules = defGetString(dicurules);
-       if (dlocprovider && dlocprovider->arg)
+       if (builtinlocaleEl && builtinlocaleEl->arg)
+               dblocale = defGetString(builtinlocaleEl);
+       if (collateEl && collateEl->arg)
+               dbcollate = defGetString(collateEl);
+       if (ctypeEl && ctypeEl->arg)
+               dbctype = defGetString(ctypeEl);
+       if (iculocaleEl && iculocaleEl->arg)
+               dblocale = defGetString(iculocaleEl);
+       if (icurulesEl && icurulesEl->arg)
+               dbicurules = defGetString(icurulesEl);
+       if (locproviderEl && locproviderEl->arg)
        {
-               char       *locproviderstr = defGetString(dlocprovider);
+               char       *locproviderstr = defGetString(locproviderEl);
 
                if (pg_strcasecmp(locproviderstr, "builtin") == 0)
                        dblocprovider = COLLPROVIDER_BUILTIN;
@@ -943,20 +943,20 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
                                         errmsg("unrecognized locale provider: 
%s",
                                                        locproviderstr)));
        }
-       if (distemplate && distemplate->arg)
-               dbistemplate = defGetBoolean(distemplate);
-       if (dallowconnections && dallowconnections->arg)
-               dballowconnections = defGetBoolean(dallowconnections);
-       if (dconnlimit && dconnlimit->arg)
+       if (istemplateEl && istemplateEl->arg)
+               dbistemplate = defGetBoolean(istemplateEl);
+       if (allowconnectionsEl && allowconnectionsEl->arg)
+               dballowconnections = defGetBoolean(allowconnectionsEl);
+       if (connlimitEl && connlimitEl->arg)
        {
-               dbconnlimit = defGetInt32(dconnlimit);
+               dbconnlimit = defGetInt32(connlimitEl);
                if (dbconnlimit < DATCONNLIMIT_UNLIMITED)
                        ereport(ERROR,
                                        
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
                                         errmsg("invalid connection limit: %d", 
dbconnlimit)));
        }
-       if (dcollversion)
-               dbcollversion = defGetString(dcollversion);
+       if (collversionEl)
+               dbcollversion = defGetString(collversionEl);
 
        /* obtain OID of proposed owner */
        if (dbowner)
@@ -1025,11 +1025,11 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
        }
 
        /* Validate the database creation strategy. */
-       if (dstrategy && dstrategy->arg)
+       if (strategyEl && strategyEl->arg)
        {
                char       *strategy;
 
-               strategy = defGetString(dstrategy);
+               strategy = defGetString(strategyEl);
                if (pg_strcasecmp(strategy, "wal_log") == 0)
                        dbstrategy = CREATEDB_WAL_LOG;
                else if (pg_strcasecmp(strategy, "file_copy") == 0)
@@ -1080,7 +1080,7 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
        /* validate provider-specific parameters */
        if (dblocprovider != COLLPROVIDER_BUILTIN)
        {
-               if (dbuiltinlocale)
+               if (builtinlocaleEl)
                        ereport(ERROR,
                                        
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
                                         errmsg("BUILTIN_LOCALE cannot be 
specified unless locale provider is builtin")));
@@ -1088,7 +1088,7 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
 
        if (dblocprovider != COLLPROVIDER_ICU)
        {
-               if (diculocale)
+               if (iculocaleEl)
                        ereport(ERROR,
                                        
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
                                         errmsg("ICU locale cannot be specified 
unless locale provider is ICU")));
@@ -1239,7 +1239,7 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
         * template0, for which we stipulate that it does not contain
         * collation-using objects.)
         */
-       if (src_collversion && !dcollversion)
+       if (src_collversion && !collversionEl)
        {
                char       *actual_versionstr;
                const char *locale;
@@ -1289,12 +1289,12 @@ createdb(ParseState *pstate, const CreatedbStmt *stmt)
        }
 
        /* Resolve default tablespace for new database */
-       if (dtablespacename && dtablespacename->arg)
+       if (tablespacenameEl && tablespacenameEl->arg)
        {
                char       *tablespacename;
                AclResult       aclresult;
 
-               tablespacename = defGetString(dtablespacename);
+               tablespacename = defGetString(tablespacenameEl);
                dst_deftablespace = get_tablespace_oid(tablespacename, false);
                /* check permissions */
                aclresult = object_aclcheck(TableSpaceRelationId, 
dst_deftablespace, GetUserId(),
-- 
2.46.0

Reply via email to