aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2021-11-26 09:57:23 +0100
committerPeter Eisentraut <peter@eisentraut.org>2021-11-26 09:57:23 +0100
commit36cb5e7c512bef394c9288786c62ef0eb1e891ba (patch)
treef5825813ce0af3e2d1a8bfc1df6dbe86aa883603
parent99e4d24a9d77e7bb87e15b318e96dc36651a7da2 (diff)
downloadpostgresql-36cb5e7c512bef394c9288786c62ef0eb1e891ba.tar.gz
postgresql-36cb5e7c512bef394c9288786c62ef0eb1e891ba.zip
Update comments
Various places wanted to point out that tuple descriptors don't contain the variable-length fields of pg_attribute. This started when attacl was added, but more fields have been added since, and these comments haven't been kept up to date consistently. Reword so that the purpose is clearer and we don't have to keep updating them.
-rw-r--r--src/backend/access/common/tupdesc.c4
-rw-r--r--src/backend/catalog/heap.c7
-rw-r--r--src/backend/commands/tablecmds.c7
3 files changed, 10 insertions, 8 deletions
diff --git a/src/backend/access/common/tupdesc.c b/src/backend/access/common/tupdesc.c
index 4c63bd4dc64..9b506471fed 100644
--- a/src/backend/access/common/tupdesc.c
+++ b/src/backend/access/common/tupdesc.c
@@ -630,7 +630,7 @@ TupleDescInitEntry(TupleDesc desc,
att->attisdropped = false;
att->attislocal = true;
att->attinhcount = 0;
- /* attacl, attoptions and attfdwoptions are not present in tupledescs */
+ /* variable-length fields are not present in tupledescs */
tuple = SearchSysCache1(TYPEOID, ObjectIdGetDatum(oidtypeid));
if (!HeapTupleIsValid(tuple))
@@ -691,7 +691,7 @@ TupleDescInitBuiltinEntry(TupleDesc desc,
att->attisdropped = false;
att->attislocal = true;
att->attinhcount = 0;
- /* attacl, attoptions and attfdwoptions are not present in tupledescs */
+ /* variable-length fields are not present in tupledescs */
att->atttypid = oidtypeid;
diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c
index 81cc39fb70e..8bbf23e4526 100644
--- a/src/backend/catalog/heap.c
+++ b/src/backend/catalog/heap.c
@@ -723,9 +723,10 @@ CheckAttributeType(const char *attname,
* Construct and insert a set of tuples in pg_attribute.
*
* Caller has already opened and locked pg_attribute. tupdesc contains the
- * attributes to insert. attcacheoff is always initialized to -1, attacl,
- * attfdwoptions and attmissingval are always initialized to NULL. attoptions
- * must contain the same number of elements as tupdesc, or be NULL.
+ * attributes to insert. attcacheoff is always initialized to -1. attoptions
+ * supplies the values for the attoptions fields and must contain the same
+ * number of elements as tupdesc or be NULL. The other variable-length fields
+ * of pg_attribute are always initialized to null values.
*
* indstate is the index state for CatalogTupleInsertWithInfo. It can be
* passed as NULL, in which case we'll fetch the necessary info. (Don't do
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 5e9cae26a0b..c35f09998c4 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -6734,7 +6734,10 @@ ATExecAddColumn(List **wqueue, AlteredTableInfo *tab, Relation rel,
list_make1_oid(rel->rd_rel->reltype),
0);
- /* construct new attribute's pg_attribute entry */
+ /*
+ * Construct new attribute's pg_attribute entry. (Variable-length fields
+ * are handled by InsertPgAttributeTuples().)
+ */
attribute.attrelid = myrelid;
namestrcpy(&(attribute.attname), colDef->colname);
attribute.atttypid = typeOid;
@@ -6758,8 +6761,6 @@ ATExecAddColumn(List **wqueue, AlteredTableInfo *tab, Relation rel,
attribute.attinhcount = colDef->inhcount;
attribute.attcollation = collOid;
- /* attribute.attacl is handled by InsertPgAttributeTuples() */
-
ReleaseSysCache(typeTuple);
tupdesc = CreateTupleDesc(lengthof(aattr), (FormData_pg_attribute **) &aattr);