Header And Logo

PostgreSQL
| The world's most advanced open source database.

Defines | Typedefs | Functions | Variables

pg_index.h File Reference

#include "catalog/genbki.h"
Include dependency graph for pg_index.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define IndexRelationId   2610
#define Natts_pg_index   18
#define Anum_pg_index_indexrelid   1
#define Anum_pg_index_indrelid   2
#define Anum_pg_index_indnatts   3
#define Anum_pg_index_indisunique   4
#define Anum_pg_index_indisprimary   5
#define Anum_pg_index_indisexclusion   6
#define Anum_pg_index_indimmediate   7
#define Anum_pg_index_indisclustered   8
#define Anum_pg_index_indisvalid   9
#define Anum_pg_index_indcheckxmin   10
#define Anum_pg_index_indisready   11
#define Anum_pg_index_indislive   12
#define Anum_pg_index_indkey   13
#define Anum_pg_index_indcollation   14
#define Anum_pg_index_indclass   15
#define Anum_pg_index_indoption   16
#define Anum_pg_index_indexprs   17
#define Anum_pg_index_indpred   18
#define INDOPTION_DESC   0x0001
#define INDOPTION_NULLS_FIRST   0x0002
#define IndexIsValid(indexForm)   ((indexForm)->indisvalid)
#define IndexIsReady(indexForm)   ((indexForm)->indisready)
#define IndexIsLive(indexForm)   ((indexForm)->indislive)

Typedefs

typedef FormData_pg_indexForm_pg_index

Functions

 CATALOG (pg_index, 2610) BKI_WITHOUT_OIDS BKI_SCHEMA_MACRO

Variables

 FormData_pg_index

Define Documentation

#define Anum_pg_index_indcheckxmin   10

Definition at line 82 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indclass   15
#define Anum_pg_index_indcollation   14
#define Anum_pg_index_indexprs   17
#define Anum_pg_index_indexrelid   1

Definition at line 73 of file pg_index.h.

Referenced by sepgsql_index_modify(), and UpdateIndexRelation().

#define Anum_pg_index_indimmediate   7

Definition at line 79 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indisclustered   8

Definition at line 80 of file pg_index.h.

Referenced by get_tables_to_cluster(), and UpdateIndexRelation().

#define Anum_pg_index_indisexclusion   6

Definition at line 78 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indislive   12

Definition at line 84 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indisprimary   5

Definition at line 77 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indisready   11

Definition at line 83 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indisunique   4

Definition at line 76 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indisvalid   9

Definition at line 81 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indkey   13

Definition at line 85 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indnatts   3

Definition at line 75 of file pg_index.h.

Referenced by UpdateIndexRelation().

#define Anum_pg_index_indoption   16
#define Anum_pg_index_indpred   18
#define Anum_pg_index_indrelid   2
#define IndexIsLive (   indexForm  )     ((indexForm)->indislive)

Definition at line 107 of file pg_index.h.

Referenced by RelationGetIndexList().

#define IndexIsReady (   indexForm  )     ((indexForm)->indisready)

Definition at line 106 of file pg_index.h.

Referenced by BuildIndexInfo(), and vac_open_indexes().

#define IndexIsValid (   indexForm  )     ((indexForm)->indisvalid)
#define IndexRelationId   2610
#define INDOPTION_DESC   0x0001
#define INDOPTION_NULLS_FIRST   0x0002

Definition at line 98 of file pg_index.h.

Referenced by generateClonedIndexStmt(), and pg_get_indexdef_worker().

#define Natts_pg_index   18

Definition at line 72 of file pg_index.h.

Referenced by GetPgIndexDescriptor().


Typedef Documentation

Definition at line 66 of file pg_index.h.


Function Documentation

CATALOG ( pg_index  ,
2610   
)

Definition at line 31 of file pg_index.h.

{
    Oid         indexrelid;     /* OID of the index */
    Oid         indrelid;       /* OID of the relation it indexes */
    int16       indnatts;       /* number of columns in index */
    bool        indisunique;    /* is this a unique index? */
    bool        indisprimary;   /* is this index for primary key? */
    bool        indisexclusion; /* is this index for exclusion constraint? */
    bool        indimmediate;   /* is uniqueness enforced immediately? */
    bool        indisclustered; /* is this the index last clustered by? */
    bool        indisvalid;     /* is this index valid for use by queries? */
    bool        indcheckxmin;   /* must we wait for xmin to be old? */
    bool        indisready;     /* is this index ready for inserts? */
    bool        indislive;      /* is this index alive at all? */

    /* variable-length fields start here, but we allow direct access to indkey */
    int2vector  indkey;         /* column numbers of indexed cols, or 0 */

#ifdef CATALOG_VARLEN
    oidvector   indcollation;   /* collation identifiers */
    oidvector   indclass;       /* opclass identifiers */
    int2vector  indoption;      /* per-column flags (AM-specific meanings) */
    pg_node_tree indexprs;      /* expression trees for index attributes that
                                 * are not simple column references; one for
                                 * each zero entry in indkey[] */
    pg_node_tree indpred;       /* expression tree for predicate, if a partial
                                 * index; else NULL */
#endif
} FormData_pg_index;


Variable Documentation

Definition at line 59 of file pg_index.h.