#include "catalog/genbki.h"

Go to the source code of this file.
| #define Anum_pg_attribute_attacl 19 |
Definition at line 202 of file pg_attribute.h.
Referenced by change_owner_fix_column_acls(), ExecGrant_Attribute(), InsertPgAttributeTuple(), pg_attribute_aclcheck_all(), and pg_attribute_aclmask().
| #define Anum_pg_attribute_attalign 12 |
Definition at line 195 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attbyval 10 |
Definition at line 193 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attcacheoff 8 |
Definition at line 191 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attcollation 18 |
Definition at line 201 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attfdwoptions 21 |
Definition at line 204 of file pg_attribute.h.
Referenced by ATExecAlterColumnGenericOptions(), GetForeignColumnOptions(), and InsertPgAttributeTuple().
| #define Anum_pg_attribute_atthasdef 14 |
Definition at line 197 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attinhcount 17 |
Definition at line 200 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attisdropped 15 |
Definition at line 198 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attislocal 16 |
Definition at line 199 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attlen 5 |
Definition at line 188 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attname 2 |
Definition at line 185 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attndims 7 |
Definition at line 190 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attnotnull 13 |
Definition at line 196 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attnum 6 |
Definition at line 189 of file pg_attribute.h.
Referenced by DeleteSystemAttributeTuples(), InsertPgAttributeTuple(), RelationBuildTupleDesc(), and sepgsql_attribute_post_create().
| #define Anum_pg_attribute_attoptions 20 |
Definition at line 203 of file pg_attribute.h.
Referenced by ATExecSetOptions(), get_attribute_options(), and InsertPgAttributeTuple().
| #define Anum_pg_attribute_attrelid 1 |
Definition at line 184 of file pg_attribute.h.
Referenced by ATExecDropInherit(), change_owner_fix_column_acls(), DeleteAttributeTuples(), DeleteSystemAttributeTuples(), InsertPgAttributeTuple(), RelationBuildTupleDesc(), sepgsql_attribute_post_create(), and sepgsql_relation_post_create().
| #define Anum_pg_attribute_attstattarget 4 |
Definition at line 187 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_attstorage 11 |
Definition at line 194 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_atttypid 3 |
Definition at line 186 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define Anum_pg_attribute_atttypmod 9 |
Definition at line 192 of file pg_attribute.h.
Referenced by InsertPgAttributeTuple().
| #define ATTRIBUTE_FIXED_PART_SIZE (offsetof(FormData_pg_attribute,attcollation) + sizeof(Oid)) |
Definition at line 168 of file pg_attribute.h.
Referenced by AllocateAttribute(), boot_openrel(), BuildHardcodedDescriptor(), ConstructTupleDescriptor(), CreateTemplateTupleDesc(), CreateTupleDescCopy(), CreateTupleDescCopyConstr(), DefineAttr(), examine_attribute(), formrdesc(), load_relcache_init_file(), RelationBuildTupleDesc(), and write_relcache_init_file().
| #define AttributeRelation_Rowtype_Id 75 |
Definition at line 34 of file pg_attribute.h.
Referenced by RelationCacheInitializePhase3().
| #define AttributeRelationId 1249 |
Definition at line 33 of file pg_attribute.h.
Referenced by AddNewAttributeTuples(), AppendAttributeTuples(), ATExecAddColumn(), ATExecAlterColumnGenericOptions(), ATExecAlterColumnType(), ATExecDropColumn(), ATExecDropInherit(), ATExecDropNotNull(), ATExecSetNotNull(), ATExecSetOptions(), ATExecSetStatistics(), ATExecSetStorage(), CacheInvalidateHeapTuple(), change_owner_fix_column_acls(), DeleteAttributeTuples(), DeleteSystemAttributeTuples(), exec_object_restorecon(), ExecGrant_Relation(), MergeAttributesIntoExisting(), RelationBuildLocalRelation(), RelationBuildTupleDesc(), RelationCacheInitializePhase3(), RemoveAttrDefaultById(), RemoveAttributeById(), renameatt_internal(), sepgsql_attribute_post_create(), sepgsql_relation_post_create(), sepgsql_restorecon(), and StoreAttrDefault().
| #define Natts_pg_attribute 21 |
Definition at line 183 of file pg_attribute.h.
Referenced by RelationCacheInitializePhase3().
| typedef FormData_pg_attribute* Form_pg_attribute |
Definition at line 176 of file pg_attribute.h.
| CATALOG | ( | pg_attribute | , | |
| 1249 | ||||
| ) |
Definition at line 36 of file pg_attribute.h.
{
Oid attrelid; /* OID of relation containing this attribute */
NameData attname; /* name of attribute */
/*
* atttypid is the OID of the instance in Catalog Class pg_type that
* defines the data type of this attribute (e.g. int4). Information in
* that instance is redundant with the attlen, attbyval, and attalign
* attributes of this instance, so they had better match or Postgres will
* fail.
*/
Oid atttypid;
/*
* attstattarget is the target number of statistics datapoints to collect
* during VACUUM ANALYZE of this column. A zero here indicates that we do
* not wish to collect any stats about this column. A "-1" here indicates
* that no value has been explicitly set for this column, so ANALYZE
* should use the default setting.
*/
int32 attstattarget;
/*
* attlen is a copy of the typlen field from pg_type for this attribute.
* See atttypid comments above.
*/
int16 attlen;
/*
* attnum is the "attribute number" for the attribute: A value that
* uniquely identifies this attribute within its class. For user
* attributes, Attribute numbers are greater than 0 and not greater than
* the number of attributes in the class. I.e. if the Class pg_class says
* that Class XYZ has 10 attributes, then the user attribute numbers in
* Class pg_attribute must be 1-10.
*
* System attributes have attribute numbers less than 0 that are unique
* within the class, but not constrained to any particular range.
*
* Note that (attnum - 1) is often used as the index to an array.
*/
int16 attnum;
/*
* attndims is the declared number of dimensions, if an array type,
* otherwise zero.
*/
int32 attndims;
/*
* fastgetattr() uses attcacheoff to cache byte offsets of attributes in
* heap tuples. The value actually stored in pg_attribute (-1) indicates
* no cached value. But when we copy these tuples into a tuple
* descriptor, we may then update attcacheoff in the copies. This speeds
* up the attribute walking process.
*/
int32 attcacheoff;
/*
* atttypmod records type-specific data supplied at table creation time
* (for example, the max length of a varchar field). It is passed to
* type-specific input and output functions as the third argument. The
* value will generally be -1 for types that do not need typmod.
*/
int32 atttypmod;
/*
* attbyval is a copy of the typbyval field from pg_type for this
* attribute. See atttypid comments above.
*/
bool attbyval;
/*----------
* attstorage tells for VARLENA attributes, what the heap access
* methods can do to it if a given tuple doesn't fit into a page.
* Possible values are
* 'p': Value must be stored plain always
* 'e': Value can be stored in "secondary" relation (if relation
* has one, see pg_class.reltoastrelid)
* 'm': Value can be stored compressed inline
* 'x': Value can be stored compressed inline or in "secondary"
* Note that 'm' fields can also be moved out to secondary storage,
* but only as a last resort ('e' and 'x' fields are moved first).
*----------
*/
char attstorage;
/*
* attalign is a copy of the typalign field from pg_type for this
* attribute. See atttypid comments above.
*/
char attalign;
/* This flag represents the "NOT NULL" constraint */
bool attnotnull;
/* Has DEFAULT value or not */
bool atthasdef;
/* Is dropped (ie, logically invisible) or not */
bool attisdropped;
/* Has a local definition (hence, do not drop when attinhcount is 0) */
bool attislocal;
/* Number of times inherited from direct parent relation(s) */
int32 attinhcount;
/* attribute's collation */
Oid attcollation;
#ifdef CATALOG_VARLEN /* variable-length fields start here */
/* NOTE: The following fields are not present in tuple descriptors. */
/* Column-level access permissions */
aclitem attacl[1];
/* Column-level options */
text attoptions[1];
/* Column-level FDW options */
text attfdwoptions[1];
#endif
} FormData_pg_attribute;
Definition at line 160 of file pg_attribute.h.
Referenced by AddNewAttributeTuples(), and ATExecAddColumn().
1.7.1