diff options
author | Peter Eisentraut <peter@eisentraut.org> | 2021-11-26 09:57:23 +0100 |
---|---|---|
committer | Peter Eisentraut <peter@eisentraut.org> | 2021-11-26 09:57:23 +0100 |
commit | 36cb5e7c512bef394c9288786c62ef0eb1e891ba (patch) | |
tree | f5825813ce0af3e2d1a8bfc1df6dbe86aa883603 | |
parent | 99e4d24a9d77e7bb87e15b318e96dc36651a7da2 (diff) | |
download | postgresql-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.c | 4 | ||||
-rw-r--r-- | src/backend/catalog/heap.c | 7 | ||||
-rw-r--r-- | src/backend/commands/tablecmds.c | 7 |
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); |