Home Explore Blog CI



postgresql

82th chunk of `doc/src/sgml/catalogs.sgml`
3080f5ef60e62ec9487d29c0458041cb1351ddc560ee278f0000000100000fa4
 </row>
    </thead>

    <tbody>
     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqrelid</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-class"><structname>pg_class</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       The OID of the <link linkend="catalog-pg-class"><structname>pg_class</structname></link> entry for this sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqtypid</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-type"><structname>pg_type</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Data type of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqstart</structfield> <type>int8</type>
      </para>
      <para>
       Start value of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqincrement</structfield> <type>int8</type>
      </para>
      <para>
       Increment value of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqmax</structfield> <type>int8</type>
      </para>
      <para>
       Maximum value of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqmin</structfield> <type>int8</type>
      </para>
      <para>
       Minimum value of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqcache</structfield> <type>int8</type>
      </para>
      <para>
       Cache size of the sequence
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>seqcycle</structfield> <type>bool</type>
      </para>
      <para>
       Whether the sequence cycles
      </para></entry>
     </row>
    </tbody>
   </tgroup>
  </table>
 </sect1>

 <sect1 id="catalog-pg-shdepend">
  <title><structname>pg_shdepend</structname></title>

  <indexterm zone="catalog-pg-shdepend">
   <primary>pg_shdepend</primary>
  </indexterm>

  <para>
   The catalog <structname>pg_shdepend</structname> records the
   dependency relationships between database objects and shared objects,
   such as roles.  This information allows
   <productname>PostgreSQL</productname> to ensure that those objects are
   unreferenced before attempting to delete them.
  </para>

  <para>
   See also <link linkend="catalog-pg-depend"><structname>pg_depend</structname></link>,
   which performs a similar function for dependencies involving objects
   within a single database.
  </para>

  <para>
   Unlike most system catalogs, <structname>pg_shdepend</structname>
   is shared across all databases of a cluster: there is only one
   copy of <structname>pg_shdepend</structname> per cluster, not
   one per database.
  </para>

  <table>
   <title><structname>pg_shdepend</structname> Columns</title>
   <tgroup cols="1">
    <thead>
     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       Column Type
      </para>
      <para>
       Description
      </para></entry>
     </row>
    </thead>

    <tbody>
     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>dbid</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-database"><structname>pg_database</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       The OID of the database the dependent object is in,
       or zero for a shared object

Title: pg_sequence Columns and Introduction to pg_shdepend
Summary
This section details the columns of the `pg_sequence` catalog: `seqrelid` (OID of the pg_class entry), `seqtypid` (data type), `seqstart` (start value), `seqincrement` (increment value), `seqmax` (maximum value), `seqmin` (minimum value), `seqcache` (cache size), and `seqcycle` (whether the sequence cycles). It then introduces the `pg_shdepend` catalog, which tracks dependencies between database objects and shared objects like roles. Unlike most system catalogs, pg_shdepend is shared across all databases in a cluster.