http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_attribute.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_attribute.html.md.erb 
b/markdown/reference/catalog/pg_attribute.html.md.erb
new file mode 100644
index 0000000..53db267
--- /dev/null
+++ b/markdown/reference/catalog/pg_attribute.html.md.erb
@@ -0,0 +1,32 @@
+---
+title: pg_attribute
+---
+
+The `pg_attribute` table stores information about table columns. There will be 
exactly one `pg_attribute` row for every column in every table in the database. 
(There will also be attribute entries for indexes, and all objects that have 
`pg_class` entries.) The term attribute is equivalent to column.
+
+<a id="topic1__ga143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_attribute</span>
+
+| column          | type     | references    | description                     
                                                                                
                                                                                
                                                                                
                                                                                
                                                               |
+|-----------------|----------|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `attrelid`      | oid      | pg\_class.oid | The table this column belongs 
to                                                                              
                                                                                
                                                                                
                                                                                
                                                                 |
+| `attname`       | name     |               | The column name                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                |
+| `atttypid`      | oid      | pg\_type.oid  | The data type of this column    
                                                                                
                                                                                
                                                                                
                                                                                
                                                               |
+| `attstattarget` | integer  |               | Controls the level of detail 
of statistics accumulated for this column by `ANALYZE`. A zero value indicates 
that no statistics should be collected. A negative value says to use the system 
default statistics target. The exact meaning of positive values is data 
type-dependent. For scalar data types, it is both the target number of "most 
common values" to collect, and the target number of histogram bins to create. |
+| `attlen`        | smallint |               | A copy of pg\_type.typlen of 
this column's type.                                                             
                                                                                
                                                                                
                                                                                
                                                                  |
+| `attnum`        | smallint |               | The number of the column. 
Ordinary columns are numbered from 1 up. System columns, such as oid, have 
(arbitrary) negative numbers.                                                   
                                                                                
                                                                                
                                                                          |
+| `attndims`      | integer  |               | Number of dimensions, if the 
column is an array type; otherwise `0`. (Presently, the number of dimensions of 
an array is not enforced, so any nonzero value effectively means it is an 
array)                                                                          
                                                                                
                                                                        |
+| `attcacheoff`   | integer  |               | Always `-1` in storage, but 
when loaded into a row descriptor in memory this may be updated to cache the 
offset of the attribute within the row                                          
                                                                                
                                                                                
                                                                      |
+| `atttypmod`     | integer  |               | Records type-specific data 
supplied at table creation time (for example, the maximum length of a varchar 
column). It is passed to type-specific input functions and length coercion 
functions. The value will generally be `-1` for types that do not need it.      
                                                                                
                                                                           |
+| `attbyval`      | boolean  |               | A copy of pg\_type.typbyval of 
this column's type                                                              
                                                                                
                                                                                
                                                                                
                                                                |
+| `attstorage`    | char     |               | Normally a copy of 
`pg_type.typstorage` of this column's type. For TOAST-able data types, this can 
be altered after column creation to control storage policy.                     
                                                                                
                                                                                
                                                                             |
+| `attalign`      | char     |               | A copy of `pg_type.typalign` 
of this column's type                                                           
                                                                                
                                                                                
                                                                                
                                                                   |
+| `attnotnull`    | boolean  |               | This represents a not-null 
constraint. It is possible to change this column to enable or disable the 
constraint.                                                                     
                                                                                
                                                                                
                                                                          |
+| `atthasdef`     | boolean  |               | This column has a default 
value, in which case there will be a corresponding entry in the `pg_attrdef` 
catalog that actually defines the value                                         
                                                                                
                                                                                
                                                                         |
+| `attisdropped`  | boolean  |               | This column has been dropped 
and is no longer valid. A dropped column is still physically present in the 
table, but is ignored by the parser and so cannot be accessed via SQL           
                                                                                
                                                                                
                                                                      |
+| `attislocal`    | boolean  |               | This column is defined locally 
in the relation. Note that a column may be locally defined and inherited 
simultaneously                                                                  
                                                                                
                                                                                
                                                                       |
+| `attinhcount`   | integer  |               | The number of direct ancestors 
this column has. A column with a nonzero number of ancestors cannot be dropped 
nor renamed                                                                     
                                                                                
                                                                                
                                                                 |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_attribute_encoding.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_attribute_encoding.html.md.erb 
b/markdown/reference/catalog/pg_attribute_encoding.html.md.erb
new file mode 100644
index 0000000..3067a93
--- /dev/null
+++ b/markdown/reference/catalog/pg_attribute_encoding.html.md.erb
@@ -0,0 +1,18 @@
+---
+title: pg_attribute_encoding
+---
+
+The `pg_attribute_encoding` system catalog table contains column storage 
information.
+
+<a id="topic1__gb177839"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_attribute\_encoding</span>
+
+| column       | type       | modifers | storage  | description                
            |
+|--------------|------------|----------|----------|----------------------------------------|
+| `attrelid`   | oid        | not null | plain    | Foreign key to 
`pg_attribute.attrelid` |
+| `attnum`     | smallint   | not null | plain    | Foreign key to 
`pg_attribute.attnum`   |
+| `attoptions` | text \[ \] |          | extended | The options               
             |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_auth_members.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_auth_members.html.md.erb 
b/markdown/reference/catalog/pg_auth_members.html.md.erb
new file mode 100644
index 0000000..7e770e0
--- /dev/null
+++ b/markdown/reference/catalog/pg_auth_members.html.md.erb
@@ -0,0 +1,19 @@
+---
+title: pg_auth_members
+---
+
+The `pg_auth_members` system catalog table shows the membership relations 
between roles. Any non-circular set of relationships is allowed. Because roles 
are system-wide, `pg_auth_members` is shared across all databases of a HAWQ 
system.
+
+<a id="topic1__gc143898"></a>
+ <span class="tablecap">Table 1. pg\_catalog.pg\_auth\_members</span>
+
+| column         | type    | references     | description                      
                  |
+|----------------|---------|----------------|----------------------------------------------------|
+| `roleid`       | oid     | pg\_authid.oid | ID of the parent-level (group) 
role                |
+| `member`       | oid     | pg\_authid.oid | ID of a member role              
                  |
+| `grantor`      | oid     | pg\_authid.oid | ID of the role that granted this 
membership        |
+| `admin_option` | boolean |                | True if role member may grant 
membership to others |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_authid.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_authid.html.md.erb 
b/markdown/reference/catalog/pg_authid.html.md.erb
new file mode 100644
index 0000000..ebae67c
--- /dev/null
+++ b/markdown/reference/catalog/pg_authid.html.md.erb
@@ -0,0 +1,36 @@
+---
+title: pg_authid
+---
+
+The `pg_authid` table contains information about database authorization 
identifiers (roles). A role subsumes the concepts of users and groups. A user 
is a role with the `rolcanlogin` flag set. Any role (with or without 
`rolcanlogin`) may have other roles as members. See 
[pg\_auth\_members](pg_auth_members.html#topic1).
+
+Since this catalog contains passwords, it must not be publicly readable. 
[pg\_roles](pg_roles.html#topic1) is a publicly readable view on `pg_authid` 
that blanks out the password field.
+
+Because user identities are system-wide, `pg_authid` is shared across all 
databases in a HAWQ system: there is only one copy of `pg_authid` per system, 
not one per database.
+
+<a id="topic1__gd143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_authid</span>
+
+| column              | type        | references | description                 
                                                                                
          |
+|---------------------|-------------|------------|-----------------------------------------------------------------------------------------------------------------------|
+| `rolname`           | name        |            | Role name                  
                                                                                
           |
+| `rolsuper`          | boolean     |            | Role has superuser 
privileges                                                                      
                   |
+| `rolinherit`        | boolean     |            | Role automatically 
inherits privileges of roles it is a member of                                  
                   |
+| `rolcreaterole`     | boolean     |            | Role may create more roles 
                                                                                
           |
+| `rolcreatedb`       | boolean     |            | Role may create databases  
                                                                                
           |
+| `rolcatupdate`      | boolean     |            | Role may update system 
catalogs directly. (Even a superuser may not do this unless this column is 
true)               |
+| `rolcanlogin`       | boolean     |            | Role may log in. That is, 
this role can be given as the initial session authorization identifier          
            |
+| `rolconnlimit`      | int4        |            | For roles that can log in, 
this sets maximum number of concurrent connections this role can make. `-1` 
means no limit |
+| `rolpassword`       | text        |            | Password (possibly 
encrypted); NULL if none                                                        
                   |
+| `rolvaliduntil`     | timestamptz |            | Password expiry time (only 
used for password authentication); NULL if no expiration                        
           |
+| `rolconfig`         | text\[\]    |            | Session defaults for 
server configuration parameters                                                 
                 |
+| `relresqueue`       | oid         |            | Object ID of the 
associated resource queue ID in `pg_resqueue`                                   
                    |
+| `rolcreaterextgpfd` | boolean     |            | Privilege to create read 
external tables with the `gpfdist` or `gpfdists` protocol                       
             |
+| `rolcreaterexhttp`  | boolean     |            | Privilege to create read 
external tables with the `http` protocol                                        
             |
+| `rolcreatewextgpfd` | boolean     |            | Privilege to create write 
external tables with the `gpfdist` or `gpfdists` protocol                       
            |
+| `rolcreaterexthdfs` | boolean     |            | Privilege to create read 
external tables with the `gphdfs` protocol. (`gphdfs` is deprecated.)           
             |
+| `rolcreatewexthdfs` | boolean     |            | Privilege to create write 
external tables with the `gphdfs` protocol. (`gphdfs` is deprecated.)           
            |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_cast.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_cast.html.md.erb 
b/markdown/reference/catalog/pg_cast.html.md.erb
new file mode 100644
index 0000000..513c7a3
--- /dev/null
+++ b/markdown/reference/catalog/pg_cast.html.md.erb
@@ -0,0 +1,23 @@
+---
+title: pg_cast
+---
+
+The `pg_cast` table stores data type conversion paths, both built-in paths and 
those defined with `CREATE CAST`. The cast functions listed in `pg_cast` must 
always take the cast source type as their first argument type, and return the 
cast destination type as their result type. A cast function can have up to 
three arguments. The second argument, if present, must be type `integer`; it 
receives the type modifier associated with the destination type, or `-1` if 
there is none. The third argument, if present, must be type `boolean`; it 
receives `true` if the cast is an explicit cast, `false` otherwise.
+
+It is legitimate to create a `pg_cast` entry in which the source and target 
types are the same, if the associated function takes more than one argument. 
Such entries represent 'length coercion functions' that coerce values of the 
type to be legal for a particular type modifier value. Note however that at 
present there is no support for associating non-default type modifiers with 
user-created data types, and so this facility is only of use for the small 
number of built-in types that have type modifier syntax built into the grammar.
+
+When a `pg_cast` entry has different source and target types and a function 
that takes more than one argument, it represents converting from one type to 
another and applying a length coercion in a single step. When no such entry is 
available, coercion to a type that uses a type modifier involves two steps, one 
to convert between data types and a second to apply the modifier.
+
+<a id="topic1__ge143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_cast</span>
+
+| column        | type | references   | description                            
                                                                                
                                                                                
                                                                |
+|---------------|------|--------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `castsource`  | oid  | pg\_type.oid | OID of the source data type.           
                                                                                
                                                                                
                                                                |
+| `casttarget`  | oid  | pg\_type.oid | OID of the target data type.           
                                                                                
                                                                                
                                                                |
+| `castfunc`    | oid  | pg\_proc.oid | The OID of the function to use to 
perform this cast. Zero is stored if the data types are binary compatible (that 
is, no run-time operation is needed to perform the cast).                       
                                                                     |
+| `castcontext` | char |              | Indicates what contexts the cast may 
be invoked in. `e` means only as an explicit cast (using `CAST` or `::` 
syntax). `a` means implicitly in assignment to a target column, as well as 
explicitly. `i` means implicitly in expressions, as well as the other cases*.* |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_class.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_class.html.md.erb 
b/markdown/reference/catalog/pg_class.html.md.erb
new file mode 100644
index 0000000..112375e
--- /dev/null
+++ b/markdown/reference/catalog/pg_class.html.md.erb
@@ -0,0 +1,213 @@
+---
+title: pg_class
+---
+
+The system catalog table `pg_class` catalogs tables and most everything else 
that has columns or is otherwise similar to a table (also known as 
*relations*). This includes indexes (see also 
[pg\_index](pg_index.html#topic1)), sequences, views, composite types, and 
TOAST tables. Not all columns are meaningful for all relation types.
+
+<a id="topic1__gf143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_class</span>
+
+<table>
+<colgroup>
+<col width="25%" />
+<col width="25%" />
+<col width="25%" />
+<col width="25%" />
+</colgroup>
+<thead>
+<tr class="header">
+<th>column</th>
+<th>type</th>
+<th>references</th>
+<th>description</th>
+</tr>
+</thead>
+<tbody>
+<tr class="odd">
+<td><code class="ph codeph">relname</code></td>
+<td>name</td>
+<td> </td>
+<td>Name of the table, index, view, etc.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relnamespace</code></td>
+<td>oid</td>
+<td>pg_namespace.oid</td>
+<td>The OID of the namespace (schema) that contains this relation</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">reltype</code></td>
+<td>oid</td>
+<td>pg_type.oid</td>
+<td>The OID of the data type that corresponds to this table's row type, if any 
(zero for indexes, which have no <code class="ph codeph">pg_type</code> 
entry)</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relowner</code></td>
+<td>oid</td>
+<td>pg_authid.oid</td>
+<td>Owner of the relation</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relam</code></td>
+<td>oid</td>
+<td>pg_am.oid</td>
+<td>If this is an index, the access method used (B-tree, Bitmap, hash, 
etc.)</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relfilenode</code></td>
+<td>oid</td>
+<td> </td>
+<td>Name of the on-disk file of this relation; <code class="ph 
codeph">0</code> if none.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">reltablespace</code></td>
+<td>oid</td>
+<td>pg_tablespace.oid</td>
+<td>The tablespace in which this relation is stored. If zero, the database's 
default tablespace is implied. (Not meaningful if the relation has no on-disk 
file.)</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relpages</code></td>
+<td>integer</td>
+<td> </td>
+<td>Size of the on-disk representation of this table in pages (of 32K each). 
This is only an estimate used by the planner. It is updated by  <code class="ph 
codeph">ANALYZE</code>, and a few DDL commands.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">reltuples</code></td>
+<td>real</td>
+<td> </td>
+<td>Number of rows in the table. This is only an estimate used by the planner. 
It is updated by <code class="ph codeph">VACUUM</code>, <code class="ph 
codeph">ANALYZE</code>, and a few DDL commands.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">reltoastrelid</code></td>
+<td>oid</td>
+<td>pg_class.oid</td>
+<td>OID of the TOAST table associated with this table, <code class="ph 
codeph">0</code> if none. The TOAST table stores large attributes &quot;out of 
line&quot; in a secondary table.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">reltoastidxid</code></td>
+<td>oid</td>
+<td>pg_class.oid</td>
+<td>For a TOAST table, the OID of its index. <code class="ph codeph">0</code> 
if not a TOAST table.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relaosegidxid</code></td>
+<td>oid</td>
+<td> </td>
+<td>Deprecated.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relaosegrelid</code></td>
+<td>oid</td>
+<td> </td>
+<td>Deprecated.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relhasindex </code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if this is a table and it has (or recently had) any indexes. This is 
set by <code class="ph codeph">CREATE INDEX</code>, but not cleared immediately 
by <code class="ph codeph">DROP INDEX</code>. <code class="ph 
codeph">VACUUM</code> will clear if it finds the table has no indexes.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relisshared</code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if this table is shared across all databases in the system. Only 
certain system catalog tables are shared.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relkind</code></td>
+<td>char</td>
+<td> </td>
+<td>The type of object
+<p><code class="ph codeph">r</code> = heap table, <code class="ph 
codeph">i</code> = index, <code class="ph codeph">S</code> = sequence, <code 
class="ph codeph">v</code> = view, <code class="ph codeph">c</code> = composite 
type, <code class="ph codeph">t</code> = TOAST value, <code class="ph 
codeph">c</code> = composite type, <code class="ph codeph">u</code> = 
uncataloged temporary heap table</p></td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relstorage</code></td>
+<td>char</td>
+<td> </td>
+<td>The storage mode of a table
+<p><code class="ph codeph">a</code> = append-only, <code class="ph 
codeph">h</code> = heap, <code class="ph codeph">p</code> = append-only 
parquet, <code class="ph codeph">v</code> = virtual, <code class="ph 
codeph">x</code>= external table.</p></td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relnatts</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Number of user columns in the relation (system columns not counted). There 
must be this many corresponding entries in pg_attribute.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relchecks</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Number of check constraints on the table.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">reltriggers</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Number of triggers on the table.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relukeys</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Unused</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relfkeys</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Unused</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relrefs</code></td>
+<td>smallint</td>
+<td> </td>
+<td>Unused</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relhasoids</code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if an OID is generated for each row of the relation.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relhaspkey</code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if the table once had a primary key.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relhasrules</code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if table has rules.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relhassubclass</code></td>
+<td>boolean</td>
+<td> </td>
+<td>True if table has (or once had) any inheritance children.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">relfrozenxid</code></td>
+<td>xid</td>
+<td> </td>
+<td>All transaction IDs before this one have been replaced with a permanent 
(frozen) transaction ID in this table. This is used to track whether the table 
needs to be vacuumed in order to prevent transaction ID wraparound or to allow 
pg_clog to be shrunk. Zero (<code class="ph 
codeph">InvalidTransactionId</code>) if the relation is not a table.</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">relacl</code></td>
+<td>aclitem[]</td>
+<td> </td>
+<td>Access privileges assigned by <code class="ph codeph">GRANT</code> and 
<code class="ph codeph">REVOKE</code>.</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">reloptions</code></td>
+<td>text[]</td>
+<td> </td>
+<td>Access-method-specific options, as &quot;keyword=value&quot; strings.</td>
+</tr>
+</tbody>
+</table>
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_compression.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_compression.html.md.erb 
b/markdown/reference/catalog/pg_compression.html.md.erb
new file mode 100644
index 0000000..3524af0
--- /dev/null
+++ b/markdown/reference/catalog/pg_compression.html.md.erb
@@ -0,0 +1,22 @@
+---
+title: pg_compression
+---
+
+The `pg_compression` system catalog table describes the compression methods 
available..
+
+<a id="topic1__gg143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_compression</span>
+
+| column             | type    | modifers | storage | description              
         |
+|--------------------|---------|----------|---------|-----------------------------------|
+| `compname`         | name    | not null | plain   | Name of the compression  
         |
+| `compconstructor`  | regproc | not null | plain   | Name of compression 
constructor   |
+| `compdestructor`   | regproc | not null | plain   | Name of compression 
destructor    |
+| `compcompressor`   | regproc | not null | plain   | Name of the compressor   
         |
+| `compdecompressor` | regproc | not null | plain   | Name of the decompressor 
         |
+| `compvalidator`    | regproc | not null | plain   | Name of the compression 
validator |
+| `compowner`        | oid     | not null | plain   | oid from pg\_authid      
         |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_constraint.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_constraint.html.md.erb 
b/markdown/reference/catalog/pg_constraint.html.md.erb
new file mode 100644
index 0000000..0f591fd
--- /dev/null
+++ b/markdown/reference/catalog/pg_constraint.html.md.erb
@@ -0,0 +1,30 @@
+---
+title: pg_constraint
+---
+
+The `pg_constraint` system catalog table stores check and foreign key 
constraints on tables. Column constraints are not treated specially. Every 
column constraint is equivalent to some table constraint. Not-null constraints 
are represented in the [pg\_attribute](pg_attribute.html#topic1) catalog table. 
Check constraints on domains are stored here, too.
+
+<a id="topic1__gh143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_constraint</span>
+
+| column          | type         | references           | description          
                                                                                
                                                                                
                                                                                
                                         |
+|-----------------|--------------|----------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `conname`       | name         |                      | Constraint name     
                                                                                
                                                                                
                                                                                
                                          |
+| `connamespace`  | oid          | pg\_namespace.oid    | The OID of the 
namespace (schema) that contains this constraint.                               
                                                                                
                                                                                
                                               |
+| `contype `      | char         |                      | `c` = check 
constraint, `f` = foreign key constraint.                                       
                                                                                
                                                                                
                                                  |
+| `condeferrable` | boolean      |                      | Is the constraint 
deferrable?                                                                     
                                                                                
                                                                                
                                            |
+| `condeferred `  | boolean      |                      | Is the constraint 
deferred by default?                                                            
                                                                                
                                                                                
                                            |
+| `conrelid`      | oid          | pg\_class.oid        | The table this 
constraint is on; 0 if not a table constraint.                                  
                                                                                
                                                                                
                                               |
+| `contypid `     | oid          | pg\_type.oid         | The domain this 
constraint is on; 0 if not a domain constraint.                                 
                                                                                
                                                                                
                                              |
+| `confrelid`     | oid          | pg\_class.oid        | If a foreign key, 
the referenced table; else 0.                                                   
                                                                                
                                                                                
                                            |
+| `confupdtype`   | char         |                      | Foreign key update 
action code.                                                                    
                                                                                
                                                                                
                                           |
+| `confdeltype`   | char         |                      | Foreign key 
deletion action code.                                                           
                                                                                
                                                                                
                                                  |
+| `confmatchtype` | char         |                      | Foreign key match 
type.                                                                           
                                                                                
                                                                                
                                            |
+| `conkey`        | smallint\[\] | pg\_attribute.attnum | If a table 
constraint, list of columns which the constraint constrains.                    
                                                                                
                                                                                
                                                   |
+| `confkey`       | smallint\[\] | pg\_attribute.attnum | If a foreign key, 
list of the referenced columns.                                                 
                                                                                
                                                                                
                                            |
+| `conbin`        | text         |                      | If a check 
constraint, an internal representation of the expression.                       
                                                                                
                                                                                
                                                   |
+| `consrc`        | text         |                      | If a check 
constraint, a human-readable representation of the expression. This is not 
updated when referenced objects change; for example, it won't track renaming of 
columns. Rather than relying on this field, it is best to use 
`pg_get_constraintdef()` to extract the definition of a check constraint. |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_conversion.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_conversion.html.md.erb 
b/markdown/reference/catalog/pg_conversion.html.md.erb
new file mode 100644
index 0000000..43763bc
--- /dev/null
+++ b/markdown/reference/catalog/pg_conversion.html.md.erb
@@ -0,0 +1,22 @@
+---
+title: pg_conversion
+---
+
+The `pg_conversion` system catalog table describes the available encoding 
conversion procedures as defined by `CREATE CONVERSION`.
+
+<a id="topic1__gi143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_conversion</span>
+
+| column           | type    | references        | description                 
                                     |
+|------------------|---------|-------------------|------------------------------------------------------------------|
+| `conname`        | name    |                   | Conversion name (unique 
within a namespace).                     |
+| `connamespace`   | oid     | pg\_namespace.oid | The OID of the namespace 
(schema) that contains this conversion. |
+| `conowner`       | oid     | pg\_authid.oid    | Owner of the conversion.    
                                     |
+| `conforencoding` | integer |                   | Source encoding ID.        
                                      |
+| `contoencoding`  | integer |                   | Destination encoding ID.   
                                      |
+| `conproc`        | regproc | pg\_proc.oid      | Conversion procedure.       
                                     |
+| `condefault`     | boolean |                   | True if this is the 
default conversion.                          |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_database.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_database.html.md.erb 
b/markdown/reference/catalog/pg_database.html.md.erb
new file mode 100644
index 0000000..b02a532
--- /dev/null
+++ b/markdown/reference/catalog/pg_database.html.md.erb
@@ -0,0 +1,26 @@
+---
+title: pg_database
+---
+
+The `pg_database` system catalog table stores information about the available 
databases. Databases are created with the `CREATE DATABASE` SQL command. Unlike 
most system catalogs, `pg_database` is shared across all databases in the 
system. There is only one copy of `pg_database` per system, not one per 
database.
+
+<a id="topic1__gj143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_database</span>
+
+| column          | type        | references         | description             
                                                                                
                                                                                
                                                                                
                                                               |
+|-----------------|-------------|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `datname`       | name        |                    | Database name.         
                                                                                
                                                                                
                                                                                
                                                                |
+| `datdba`        | oid         | pg\_authid.oid     | Owner of the database, 
usually the user who created it.                                                
                                                                                
                                                                                
                                                                |
+| `encoding`      | integer     |                    | Character encoding for 
this database. `pg_encoding_to_char()` can translate this number to the 
encoding name.                                                                  
                                                                                
                                                                        |
+| `datistemplate` | boolean     |                    | If true then this 
database can be used in the `TEMPLATE` clause of `CREATE DATABASE` to create a 
new database as a clone of this one.                                            
                                                                                
                                                                      |
+| `datallowconn`  | boolean     |                    | If false then no one 
can connect to this database. This is used to protect the `template0` database 
from being altered.                                                             
                                                                                
                                                                   |
+| `datconnlimit`  | integer     |                    | Sets the maximum 
number of concurrent connections that can be made to this database. `-1` means 
no limit.                                                                       
                                                                                
                                                                       |
+| `datlastsysoid` | oid         |                    | Last system OID in the 
database.                                                                       
                                                                                
                                                                                
                                                                |
+| `datfrozenxid ` | xid         |                    | All transaction IDs 
before this one have been replaced with a permanent (frozen) transaction ID in 
this database. This is used to track whether the database needs to be vacuumed 
in order to prevent transaction ID wraparound or to allow pg\_clog to be 
shrunk. It is the minimum of the per-table *pg\_class.relfrozenxid* values. |
+| `dattablespace` | oid         | pg\_tablespace.oid | The default tablespace 
for the database. Within this database, all tables for which 
*pg\_class.reltablespace* is zero will be stored in this tablespace. All 
non-shared system catalogs will also be there.                                  
                                                                                
          |
+| `datconfig`     | text\[\]    |                    | Session defaults for 
user-settable server configuration parameters.                                  
                                                                                
                                                                                
                                                                  |
+| `datacl`        | aclitem\[\] |                    | Database access 
privileges as given by `GRANT` and `REVOKE`.                                    
                                                                                
                                                                                
                                                                       |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_depend.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_depend.html.md.erb 
b/markdown/reference/catalog/pg_depend.html.md.erb
new file mode 100644
index 0000000..85a1835
--- /dev/null
+++ b/markdown/reference/catalog/pg_depend.html.md.erb
@@ -0,0 +1,26 @@
+---
+title: pg_depend
+---
+
+The `pg_depend` system catalog table records the dependency relationships 
between database objects. This information allows `DROP` commands to find which 
other objects must be dropped by `DROP CASCADE` or prevent dropping in the 
`DROP RESTRICT` case. See also [pg\_shdepend](pg_shdepend.html#topic1), which 
performs a similar function for dependencies involving objects that are shared 
across a HAWQ system.
+
+In all cases, a `pg_depend` entry indicates that the referenced object may not 
be dropped without also dropping the dependent object. However, there are 
several subflavors identified by `deptype`:
+
+-   **DEPENDENCY\_NORMAL (n)** — A normal relationship between 
separately-created objects. The dependent object may be dropped without 
affecting the referenced object. The referenced object may only be dropped by 
specifying `CASCADE`, in which case the dependent object is dropped, too. 
Example: a table column has a normal dependency on its data type.
+-   **DEPENDENCY\_AUTO (a)** — The dependent object can be dropped 
separately from the referenced object, and should be automatically dropped 
(regardless of `RESTRICT` or `CASCADE` mode) if the referenced object is 
dropped. Example: a named constraint on a table is made autodependent on the 
table, so that it will go away if the table is dropped.
+-   **DEPENDENCY\_INTERNAL (i)** — The dependent object was created as part 
of creation of the referenced object, and is really just a part of its internal 
implementation. A `DROP` of the dependent object will be disallowed outright 
(we'll tell the user to issue a `DROP` against the referenced object, instead). 
A `DROP` of the referenced object will be propagated through to drop the 
dependent object whether `CASCADE` is specified or not.
+-   **DEPENDENCY\_PIN (p)** — There is no dependent object; this type of 
entry is a signal that the system itself depends on the referenced object, and 
so that object must never be deleted. Entries of this type are created only by 
system initialization. The columns for the dependent object contain zeroes. <a 
id="topic1__gk143898"></a>
+
+<span class="tablecap">Table 1. pg\_catalog.pg\_depend</span>
+
+    | column         | type    | references     | description                  
                                                                              |
+    
|----------------|---------|----------------|------------------------------------------------------------------------------------------------------------|
+    | `classid`      | oid     | pg\_class.oid  | The OID of the system 
catalog the dependent object is in.                                             
     |
+    | `objid`        | oid     | any OID column | The OID of the specific 
dependent object.                                                               
   |
+    | `objsubid `    | integer |                | For a table column, this is 
the column number. For all other object types, this column is zero.            |
+    | `refclassid`   | oid     | pg\_class.oid  | The OID of the system 
catalog the referenced object is in.                                            
     |
+    | `refobjid`     | oid     | any OID column | The OID of the specific 
referenced object.                                                              
   |
+    | `refobjsubid ` | integer |                | For a table column, this is 
the referenced column number. For all other object types, this column is zero. |
+    | `deptype`      | char    |                | A code defining the 
specific semantics of this dependency relationship.                             
       |
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_description.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_description.html.md.erb 
b/markdown/reference/catalog/pg_description.html.md.erb
new file mode 100644
index 0000000..bad9627
--- /dev/null
+++ b/markdown/reference/catalog/pg_description.html.md.erb
@@ -0,0 +1,17 @@
+---
+title: pg_description
+---
+
+The `pg_description` system catalog table stores optional descriptions 
(comments) for each database object. Descriptions can be manipulated with the 
`COMMENT` command and viewed with `psql`'s `\d` meta-commands. Descriptions of 
many built-in system objects are provided in the initial contents of 
`pg_description`. See also [pg\_shdescription](pg_shdescription.html#topic1), 
which performs a similar function for descriptions involving objects that are 
shared across a HAWQ system.
+
+<a id="topic1__gm143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_description</span>
+
+| column         | type    | references     | description                      
                                                                            |
+|----------------|---------|----------------|--------------------------------------------------------------------------------------------------------------|
+| `objoid`       | oid     | any OID column | The OID of the object this 
description pertains to.                                                        
  |
+| `classoid`     | oid     | pg\_class.oid  | The OID of the system catalog 
this object appears in                                                         |
+| `objsubid `    | integer |                | For a comment on a table 
column, this is the column number. For all other object types, this column is 
zero. |
+| `description ` | text    |                | Arbitrary text that serves as 
the description of this object.                                                |
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_exttable.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_exttable.html.md.erb 
b/markdown/reference/catalog/pg_exttable.html.md.erb
new file mode 100644
index 0000000..ca5fc88
--- /dev/null
+++ b/markdown/reference/catalog/pg_exttable.html.md.erb
@@ -0,0 +1,23 @@
+---
+title: pg_exttable
+---
+
+The `pg_exttable` system catalog table is used to track external tables and 
web tables created by the `CREATE EXTERNAL TABLE` command.
+
+<a id="topic1__gn143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_exttable</span>
+
+| column            | type     | references    | description                   
                                                                                
   |
+|-------------------|----------|---------------|------------------------------------------------------------------------------------------------------------------|
+| `reloid`          | oid      | pg\_class.oid | The OID of this external 
table.                                                                          
        |
+| `location`        | text\[\] |               | The URI location(s) of the 
external table files.                                                           
      |
+| `fmttype`         | char     |               | Format of the external table 
files: `t` for text, or `c` for csv.                                            
    |
+| `fmtopts`         | text     |               | Formatting options of the 
external table files, such as the field delimiter, null string, escape 
character, etc. |
+| `command`         | text     |               | The OS command to execute 
when the external table is accessed.                                            
       |
+| `rejectlimit`     | integer  |               | The per segment reject limit 
for rows with errors, after which the load will fail.                           
    |
+| `rejectlimittype` | char     |               | Type of reject limit 
threshold: `r` for number of rows.                                              
            |
+| `fmterrtbl`       | oid      | pg\_class.oid | The object id of the error 
table where format errors will be logged.                                       
      |
+| `encoding`        | text     |               | The client encoding.         
                                                                                
    |
+| `writable`        | boolean  |               | `0` for readable external 
tables, `1` for writable external tables.                                       
       |
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_filespace.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_filespace.html.md.erb 
b/markdown/reference/catalog/pg_filespace.html.md.erb
new file mode 100644
index 0000000..e0b810e
--- /dev/null
+++ b/markdown/reference/catalog/pg_filespace.html.md.erb
@@ -0,0 +1,19 @@
+---
+title: pg_filespace
+---
+
+The `pg_filespace` table contains information about the filespaces created in 
a HAWQ system. Every system contains a default filespace, `pg_system`, which is 
a collection of all the data directory locations created at system 
initialization time.
+
+A tablespace requires a file system location to store its database files. In 
HAWQ, the master and each segment needs its own distinct storage location. This 
collection of file system locations for all components in a HAWQ system is 
referred to as a filespace.
+
+<a id="topic1__go138428"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_filespace</span>
+
+| column    | type | references    | description                               
            |
+|-----------|------|---------------|-------------------------------------------------------|
+| `fsname`  | name |               | The name of the filespace.               
             |
+| `fsowner` | oid  | pg\_roles.oid | The object id of the role that created 
the filespace. |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_filespace_entry.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_filespace_entry.html.md.erb 
b/markdown/reference/catalog/pg_filespace_entry.html.md.erb
new file mode 100644
index 0000000..5a45113
--- /dev/null
+++ b/markdown/reference/catalog/pg_filespace_entry.html.md.erb
@@ -0,0 +1,18 @@
+---
+title: pg_filespace_entry
+---
+
+A tablespace requires a file system location to store its database files. In 
HAWQ, the master and each segment needs its own distinct storage location. This 
collection of file system locations for all components in a HAWQ system is 
referred to as a *filespace*. The `pg_filespace_entry` table contains 
information about the collection of file system locations across a HAWQ system 
that comprise a HAWQ filespace.
+
+<a id="topic1__gp138428"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_filespace\_entry</span>
+
+
+| column        | type    | references                       | description     
                          |
+|---------------|---------|----------------------------------|-------------------------------------------|
+| `fsefsoid`    | oid     | pg\_filespace.oid                | Object id of 
the filespace.               |
+| `fsedbid`     | integer | gp\_segment\_ configuration.dbid | Segment id.     
                          |
+| `fselocation` | text    |                                  | File system 
location for this segment id. |
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_index.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_index.html.md.erb 
b/markdown/reference/catalog/pg_index.html.md.erb
new file mode 100644
index 0000000..e93bd86
--- /dev/null
+++ b/markdown/reference/catalog/pg_index.html.md.erb
@@ -0,0 +1,23 @@
+---
+title: pg_index
+---
+
+The `pg_index` system catalog table contains part of the information about 
indexes. The rest is mostly in [pg\_class](pg_class.html#topic1).
+
+<a id="topic1__gq143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_index</span>
+
+| column           | type       | references           | description           
                                                                                
                                                                                
                                                                                
                                                                                
  |
+|------------------|------------|----------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `indexrelid`     | oid        | pg\_class.oid        | The OID of the 
`pg_class` entry for this index.                                                
                                                                                
                                                                                
                                                                                
          |
+| `indrelid`       | oid        | pg\_class.oid        | The OID of the 
`pg_class` entry for the table this index is for.                               
                                                                                
                                                                                
                                                                                
          |
+| `indnatts`       | smallint   |                      | The number of 
columns in the index (duplicates `pg_class.relnatts`).                          
                                                                                
                                                                                
                                                                                
           |
+| `indisunique`    | boolean    |                      | If true, this is a 
unique index.                                                                   
                                                                                
                                                                                
                                                                                
     |
+| `indisclustered` | boolean    |                      | If true, the table 
was last clustered on this index via the `CLUSTER` command.                     
                                                                                
                                                                                
                                                                                
     |
+| `indisvalid`     | boolean    |                      | If true, the index 
is currently valid for queries. False means the index is possibly incomplete: 
it must still be modified by `INSERT` operations, but it cannot safely be used 
for queries.                                                                    
                                                                               |
+| `indkey`         | int2vector | pg\_attribute.attnum | This is an array of 
indnatts values that indicate which table columns this index indexes. For 
example a value of 1 3 would mean that the first and the third table columns 
make up the index key. A zero in this array indicates that the corresponding 
index attribute is an expression over the table columns, rather than a simple 
column reference. |
+| `indclass`       | oidvector  | pg\_opclass.oid      | For each column in 
the index key, this contains the OID of the operator class to use.              
                                                                                
                                                                                
                                                                                
      |
+| `indexprs`       | text       |                      | Expression trees (in 
`nodeToString()` representation) for index attributes that are not simple 
column references. This is a list with one element for each zero entry in 
indkey. NULL if all index attributes are simple references.                     
                                                                                
               |
+| `indpred`        | text       |                      | Expression tree (in 
`nodeToString()` representation) for partial index predicate. NULL if not a 
partial index.                                                                  
                                                                                
                                                                                
        |
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_inherits.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_inherits.html.md.erb 
b/markdown/reference/catalog/pg_inherits.html.md.erb
new file mode 100644
index 0000000..9868602
--- /dev/null
+++ b/markdown/reference/catalog/pg_inherits.html.md.erb
@@ -0,0 +1,16 @@
+---
+title: pg_inherits
+---
+
+The `pg_inherits` system catalog table records information about table 
inheritance hierarchies. There is one entry for each direct child table in the 
database. (Indirect inheritance can be determined by following chains of 
entries.) In HAWQ, inheritance relationships are created by both the `INHERITS` 
clause (standalone inheritance) and the `PARTITION         BY` clause 
(partitioned child table inheritance) of `CREATE       TABLE`.
+
+<a id="topic1__gr143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_inherits</span>
+
+| column      | type    | references    | description                          
                                                                                
                                                                   |
+|-------------|---------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `inhrelid`  | oid     | pg\_class.oid | The OID of the child table.          
                                                                                
                                                                   |
+| `inhparent` | oid     | pg\_class.oid | The OID of the parent table.         
                                                                                
                                                                   |
+| `inhseqno`  | integer |               | If there is more than one direct 
parent for a child table (multiple inheritance), this number tells the order in 
which the inherited columns are to be arranged. The count starts at 1. |
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_language.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_language.html.md.erb 
b/markdown/reference/catalog/pg_language.html.md.erb
new file mode 100644
index 0000000..9b626f9
--- /dev/null
+++ b/markdown/reference/catalog/pg_language.html.md.erb
@@ -0,0 +1,21 @@
+---
+title: pg_language
+---
+
+The `pg_language` system catalog table registers languages in which you can 
write functions or stored procedures. It is populated by `CREATE LANGUAGE`.
+
+<a id="topic1__gs143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_language</span>
+
+| column          | type        | references   | description                   
                                                                                
                                                                                
                                                |
+|-----------------|-------------|--------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `lanname`       | name        |              | Name of the language.        
                                                                                
                                                                                
                                                 |
+| `lanispl `      | boolean     |              | This is false for internal 
languages (such as SQL) and true for user-defined languages. Currently, 
`pg_dump` still uses this to determine which languages need to be dumped, but 
this may be replaced by a different mechanism in the future. |
+| `lanpltrusted ` | boolean     |              | True if this is a trusted 
language, which means that it is believed not to grant access to anything 
outside the normal SQL execution environment. Only superusers may create 
functions in untrusted languages.                                |
+| `lanplcallfoid` | oid         | pg\_proc.oid | For noninternal languages 
this references the language handler, which is a special function that is 
responsible for executing all functions that are written in the particular 
language.                                                      |
+| `lanvalidator`  | oid         | pg\_proc.oid | This references a language 
validator function that is responsible for checking the syntax and validity of 
new functions when they are created. Zero if no validator is provided.          
                                                    |
+| `lanacl `       | aclitem\[\] |              | Access privileges for the 
language.                                                                       
                                                                                
                                                    |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_largeobject.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_largeobject.html.md.erb 
b/markdown/reference/catalog/pg_largeobject.html.md.erb
new file mode 100644
index 0000000..59d2c6d
--- /dev/null
+++ b/markdown/reference/catalog/pg_largeobject.html.md.erb
@@ -0,0 +1,19 @@
+---
+title: pg_largeobject
+---
+
+The `pg_largeobject` system catalog table holds the data making up 'large 
objects'. A large object is identified by an OID assigned when it is created. 
Each large object is broken into segments or 'pages' small enough to be 
conveniently stored as rows in `pg_largeobject`. The amount of data per page is 
defined to be `LOBLKSIZE` (which is currently `BLCKSZ`/4, or typically 8K).
+
+Each row of `pg_largeobject` holds data for one page of a large object, 
beginning at byte offset (*pageno*` * LOBLKSIZE`) within the object. The 
implementation allows sparse storage: pages may be missing, and may be shorter 
than `LOBLKSIZE` bytes even if they are not the last page of the object. 
Missing regions within a large object read as zeroes.
+
+<a id="topic1__gt143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_largeobject</span>
+
+| column   | type    | references | description                                
                                                             |
+|----------|---------|------------|---------------------------------------------------------------------------------------------------------|
+| `loid`   | oid     |            | Identifier of the large object that 
includes this page.                                                 |
+| `pageno` | integer |            | Page number of this page within its large 
object (counting from zero).                                  |
+| `data`   | bytea   |            | Actual data stored in the large object. 
This will never be more than `LOBLKSIZE` bytes and may be less. |
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_listener.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_listener.html.md.erb 
b/markdown/reference/catalog/pg_listener.html.md.erb
new file mode 100644
index 0000000..4df5fda
--- /dev/null
+++ b/markdown/reference/catalog/pg_listener.html.md.erb
@@ -0,0 +1,20 @@
+---
+title: pg_listener
+---
+
+The `pg_listener` system catalog table supports the `LISTEN` and `NOTIFY` 
commands. A listener creates an entry in `pg_listener` for each notification 
name it is listening for. A notifier scans and updates each matching entry to 
show that a notification has occurred. The notifier also sends a signal (using 
the PID recorded in the table) to awaken the listener from sleep.
+
+This table is not currently used in HAWQ.
+
+<a id="topic1__gu143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_listener</span>
+
+| column         | type    | references | description                          
                                                                                
            |
+|----------------|---------|------------|----------------------------------------------------------------------------------------------------------------------------------|
+| `relname`      | name    |            | Notify condition name. (The name 
need not match any actual relation in the database.                             
                |
+| `listenerpid`  | integer |            | PID of the server process that 
created this entry.                                                             
                  |
+| `notification` | integer |            | Zero if no event is pending for 
this listener. If an event is pending, the PID of the server process that sent 
the notification. |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_locks.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_locks.html.md.erb 
b/markdown/reference/catalog/pg_locks.html.md.erb
new file mode 100644
index 0000000..a20a4d7
--- /dev/null
+++ b/markdown/reference/catalog/pg_locks.html.md.erb
@@ -0,0 +1,35 @@
+---
+title: pg_locks
+---
+
+The `pg_locks` view provides access to information about the locks held by 
open transactions within HAWQ.
+
+`pg_locks` contains one row per active lockable object, requested lock mode, 
and relevant transaction. Thus, the same lockable object may appear many times, 
if multiple transactions are holding or waiting for locks on it. However, an 
object that currently has no locks on it will not appear at all.
+
+There are several distinct types of lockable objects: whole relations (such as 
tables), individual pages of relations, individual tuples of relations, 
transaction IDs, and general database objects. Also, the right to extend a 
relation is represented as a separate lockable object.
+
+<a id="topic1__gv141982"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_locks</span>
+
+| column           | type     | references       | description                 
                                                                                
                                                                                
          |
+|------------------|----------|------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `locktype`       | text     |                  | Type of the lockable 
object: `relation`, `extend`, `page`, `tuple`, `transactionid`, `object`, 
`userlock`, `resource queue`, or `advisory`                                     
                       |
+| `database`       | oid      | pg\_database.oid | OID of the database in 
which the object exists, zero if the object is a shared object, or NULL if the 
object is a transaction ID                                                      
                |
+| `relation`       | oid      | pg\_class.oid    | OID of the relation, or 
NULL if the object is not a relation or part of a relation                      
                                                                                
              |
+| `page `          | integer  |                  | Page number within the 
relation, or NULL if the object is not a tuple or relation page                 
                                                                                
               |
+| `tuple `         | smallint |                  | Tuple number within the 
page, or NULL if the object is not a tuple                                      
                                                                                
              |
+| `transactionid ` | xid      |                  | ID of a transaction, or 
NULL if the object is not a transaction ID                                      
                                                                                
              |
+| `classid`        | oid      | pg\_class.oid    | OID of the system catalog 
containing the object, or NULL if the object is not a general database object   
                                                                                
            |
+| `objid `         | oid      | any OID column   | OID of the object within 
its system catalog, or NULL if the object is not a general database object      
                                                                                
             |
+| `objsubid `      | smallint |                  | For a table column, this 
is the column number (the `classid` and `objid` refer to the table itself). For 
all other object types, this column is zero. NULL if the object is not a 
general database object |
+| `transaction`    | xid      |                  | ID of the transaction that 
is holding or awaiting this lock                                                
                                                                                
           |
+| `pid`            | integer  |                  | Process ID of the server 
process holding or awaiting this lock. NULL if the lock is held by a prepared 
transaction                                                                     
               |
+| `mode`           | text     |                  | Name of the lock mode held 
or desired by this process                                                      
                                                                                
           |
+| `granted`        | boolean  |                  | True if lock is held, 
false if lock is awaited.                                                       
                                                                                
                |
+| `mppsessionid`   | integer  |                  | The id of the client 
session associated with this lock.                                              
                                                                                
                 |
+| `mppiswriter`    | boolean  |                  | Specifies whether the lock 
is held by a writer process.                                                    
                                                                                
           |
+| `gp_segment_id`  | integer  |                  | The HAWQ segment id 
(`dbid`) where the lock is held.                                                
                                                                                
                  |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_namespace.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_namespace.html.md.erb 
b/markdown/reference/catalog/pg_namespace.html.md.erb
new file mode 100644
index 0000000..b307ecb
--- /dev/null
+++ b/markdown/reference/catalog/pg_namespace.html.md.erb
@@ -0,0 +1,18 @@
+---
+title: pg_namespace
+---
+
+The `pg_namespace` system catalog table stores namespaces. A namespace is the 
structure underlying SQL schemas: each namespace can have a separate collection 
of relations, types, etc. without name conflicts.
+
+<a id="topic1__gx143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_namespace</span>
+
+| column     | type        | references     | description                      
                   |
+|------------|-------------|----------------|-----------------------------------------------------|
+| `nspname`  | name        |                | Name of the namespace           
                    |
+| `nspowner` | oid         | pg\_authid.oid | Owner of the namespace           
                   |
+| `nspacl `  | aclitem\[\] |                | Access privileges as given by 
`GRANT` and `REVOKE`. |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_opclass.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_opclass.html.md.erb 
b/markdown/reference/catalog/pg_opclass.html.md.erb
new file mode 100644
index 0000000..d03315c
--- /dev/null
+++ b/markdown/reference/catalog/pg_opclass.html.md.erb
@@ -0,0 +1,22 @@
+---
+title: pg_opclass
+---
+
+The `pg_opclass` system catalog table defines index access method operator 
classes. Each operator class defines semantics for index columns of a 
particular data type and a particular index access method. Note that there can 
be multiple operator classes for a given data type/access method combination, 
thus supporting multiple behaviors. The majority of the information defining an 
operator class is actually not in its `pg_opclass` row, but in the associated 
rows in [pg\_amop](pg_amop.html#topic1) and 
[pg\_amproc](pg_amproc.html#topic1). Those rows are considered to be part of 
the operator class definition — this is not unlike the way that a relation is 
defined by a single [pg\_class](pg_class.html#topic1) row plus associated rows 
in [pg\_attribute](pg_attribute.html#topic1) and other tables.
+
+<a id="topic1__gw141982"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_opclass</span>
+
+| column         | type    | references        | description                   
                                          |
+|----------------|---------|-------------------|-------------------------------------------------------------------------|
+| `opcamid`      | oid     | pg\_am.oid        | Index access method operator 
class is for.                              |
+| `opcname`      | name    |                   | Name of this operator class  
                                           |
+| `opcnamespace` | oid     | pg\_namespace.oid | Namespace of this operator 
class                                        |
+| `opcowner`     | oid     | pg\_authid.oid    | Owner of the operator class   
                                          |
+| `opcintype`    | oid     | pg\_type.oid      | Data type that the operator 
class indexes.                              |
+| `opcdefault`   | boolean |                   | True if this operator class 
is the default for the data type opcintype. |
+| `opckeytype`   | oid     | pg\_type.oid      | Type of data stored in index, 
or zero if same as opcintype.             |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_operator.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_operator.html.md.erb 
b/markdown/reference/catalog/pg_operator.html.md.erb
new file mode 100644
index 0000000..71c632d
--- /dev/null
+++ b/markdown/reference/catalog/pg_operator.html.md.erb
@@ -0,0 +1,32 @@
+---
+title: pg_operator
+---
+
+The `pg_operator` system catalog table stores information about operators, 
both built-in and those defined by `CREATE OPERATOR`. Unused column contain 
zeroes. For example, `oprleft` is zero for a prefix operator.
+
+<a id="topic1__gy150092"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_operator</span>
+
+| column         | type    | references        | description                   
                                                                                
           |
+|----------------|---------|-------------------|--------------------------------------------------------------------------------------------------------------------------|
+| `oprname`      | name    |                   | Name of the operator.        
                                                                                
            |
+| `oprnamespace` | oid     | pg\_namespace.oid | The OID of the namespace that 
contains this operator.                                                         
           |
+| `oprowner`     | oid     | pg\_authid.oid    | Owner of the operator.        
                                                                                
           |
+| `oprkind`      | char    |                   | `b` = infix (both), `l` = 
prefix (left), `r` = postfix (right)                                            
               |
+| `oprcanhash`   | boolean |                   | This operator supports hash 
joins.                                                                          
             |
+| `oprleft`      | oid     | pg\_type.oid      | Type of the left operand.     
                                                                                
           |
+| `oprright`     | oid     | pg\_type.oid      | Type of the right operand.    
                                                                                
           |
+| `oprresult`    | oid     | pg\_type.oid      | Type of the result.           
                                                                                
           |
+| `oprcom`       | oid     | pg\_operator.oid  | Commutator of this operator, 
if any.                                                                         
            |
+| `oprnegate`    |         | pg\_operator.oid  | Negator of this operator, if 
any.                                                                            
            |
+| `oprlsortop`   | oid     | pg\_operator.oid  | If this operator supports 
merge joins, the operator that sorts the type of the left-hand operand (`L<L`). 
               |
+| `oprrsortop`   | oid     | pg\_operator.oid  | If this operator supports 
merge joins, the operator that sorts the type of the right-hand operand 
(`R<R`).               |
+| `oprltcmpop`   | oid     | pg\_operator.oid  | If this operator supports 
merge joins, the less-than operator that compares the left and right operand 
types (`L<R`).    |
+| `oprgtcmpop`   | oid     | pg\_operator.oid  | If this operator supports 
merge joins, the greater-than operator that compares the left and right operand 
types (`L>R`). |
+| `oprcode`      | regproc | pg\_proc.oid      | Function that implements this 
operator.                                                                       
           |
+| `oprrest `     | regproc | pg\_proc.oid      | Restriction selectivity 
estimation function for this operator.                                          
                 |
+| `oprjoin`      | regproc | pg\_proc.oid      | Join selectivity estimation 
function for this operator.                                                     
             |
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/de1e2e07/markdown/reference/catalog/pg_partition.html.md.erb
----------------------------------------------------------------------
diff --git a/markdown/reference/catalog/pg_partition.html.md.erb 
b/markdown/reference/catalog/pg_partition.html.md.erb
new file mode 100644
index 0000000..6795930
--- /dev/null
+++ b/markdown/reference/catalog/pg_partition.html.md.erb
@@ -0,0 +1,20 @@
+---
+title: pg_partition
+---
+
+The `pg_partition` system catalog table is used to track partitioned tables 
and their inheritance level relationships. Each row of `pg_partition` 
represents either the level of a partitioned table in the partition hierarchy, 
or a subpartition template description. The value of the attribute 
`paristemplate` determines what a particular row represents.
+
+<a id="topic1__gz143898"></a>
+<span class="tablecap">Table 1. pg\_catalog.pg\_partition</span>
+
+| column          | type       | references      | description                 
                                                                                
                                        |
+|-----------------|------------|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|
+| `parrelid`      | oid        | pg\_class.oid   | The object identifier of 
the table.                                                                      
                                           |
+| `parkind`       | char       |                 | The partition type - `R` 
for range or `L` for list.                                                      
                                           |
+| `parlevel`      | smallint   |                 | The partition level of 
this row: 0 for the top-level parent table, 1 for the first level under the 
parent table, 2 for the second level, and so on. |
+| `paristemplate` | boolean    |                 | Whether or not this row 
represents a subpartition template definition (true) or an actual partitioning 
level (false).                               |
+| `parnatts`      | smallint   |                 | The number of attributes 
that define this level.                                                         
                                           |
+| `paratts`       | int2vector |                 | An array of the attribute 
numbers (as in `pg_attribute.attnum`) of the attributes that participate in 
defining this level.                          |
+| `parclass`      | oidvector  | pg\_opclass.oid | The operator class 
identifier(s) of the partition columns.                                         
                                                 |
+
+

Reply via email to