Add OCLASS_PGXC items to several switch statements
authorTomas Vondra <[email protected]>
Thu, 6 Jul 2017 17:08:48 +0000 (19:08 +0200)
committerTomas Vondra <[email protected]>
Thu, 6 Jul 2017 17:08:48 +0000 (19:08 +0200)
Multiple switch statements on oclass values are intentionally missing
the default clause. As the PGXC oclass options were missing, compilers
were complaining about it.

src/backend/catalog/objectaddress.c
src/backend/commands/alter.c
src/backend/commands/tablecmds.c

index a135ac2060b8b5f87db6e035838cc23070b03d0b..b2e2fd9ec683b70cdda8892b6558983d43bf076b 100644 (file)
@@ -3433,6 +3433,13 @@ getObjectDescription(const ObjectAddress *object)
                                break;
                        }
 
+               /* XL: prefix the object with 'distributed' */
+               case OCLASS_PGXC_CLASS:
+                       {
+                               appendStringInfoString(&buffer, _("distributed "));
+                               getRelationDescription(&buffer, object->objectId);
+                       }
+
                        /*
                         * There's intentionally no default: case here; we want the
                         * compiler to warn if a new OCLASS hasn't been handled above.
index 4f8147907c4e54a23d3f708b1186d5f1d30d5d9a..afa9e2e1f1707c0ffeaecc13d79f14c9afa72ff6 100644 (file)
@@ -627,6 +627,9 @@ AlterObjectNamespace_oid(Oid classId, Oid objid, Oid nspOid,
                case OCLASS_PUBLICATION_REL:
                case OCLASS_SUBSCRIPTION:
                case OCLASS_TRANSFORM:
+               case OCLASS_PGXC_NODE:
+               case OCLASS_PGXC_GROUP:
+               case OCLASS_PGXC_CLASS:
                        /* ignore object types that don't have schema-qualified names */
                        break;
 
index a1de996723e2281a127a448b05ff7e79ca5603b6..6d6d6b5a8be5a04ec01b463a277a686cd7f94b84 100644 (file)
@@ -9468,6 +9468,9 @@ ATExecAlterColumnType(AlteredTableInfo *tab, Relation rel,
                        case OCLASS_PUBLICATION_REL:
                        case OCLASS_SUBSCRIPTION:
                        case OCLASS_TRANSFORM:
+                       case OCLASS_PGXC_NODE:
+                       case OCLASS_PGXC_GROUP:
+                       case OCLASS_PGXC_CLASS:
 
                                /*
                                 * We don't expect any of these sorts of objects to depend on