Header And Logo

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

toasting.h

Go to the documentation of this file.
00001 /*-------------------------------------------------------------------------
00002  *
00003  * toasting.h
00004  *    This file provides some definitions to support creation of toast tables
00005  *
00006  *
00007  * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group
00008  * Portions Copyright (c) 1994, Regents of the University of California
00009  *
00010  * src/include/catalog/toasting.h
00011  *
00012  *-------------------------------------------------------------------------
00013  */
00014 #ifndef TOASTING_H
00015 #define TOASTING_H
00016 
00017 /*
00018  * toasting.c prototypes
00019  */
00020 extern void AlterTableCreateToastTable(Oid relOid, Datum reloptions);
00021 extern void BootstrapToastTable(char *relName,
00022                     Oid toastOid, Oid toastIndexOid);
00023 
00024 
00025 /*
00026  * This macro is just to keep the C compiler from spitting up on the
00027  * upcoming commands for genbki.pl.
00028  */
00029 #define DECLARE_TOAST(name,toastoid,indexoid) extern int no_such_variable
00030 
00031 
00032 /*
00033  * What follows are lines processed by genbki.pl to create the statements
00034  * the bootstrap parser will turn into BootstrapToastTable commands.
00035  * Each line specifies the system catalog that needs a toast table,
00036  * the OID to assign to the toast table, and the OID to assign to the
00037  * toast table's index.  The reason we hard-wire these OIDs is that we
00038  * need stable OIDs for shared relations, and that includes toast tables
00039  * of shared relations.
00040  */
00041 
00042 /* normal catalogs */
00043 DECLARE_TOAST(pg_attrdef, 2830, 2831);
00044 DECLARE_TOAST(pg_constraint, 2832, 2833);
00045 DECLARE_TOAST(pg_description, 2834, 2835);
00046 DECLARE_TOAST(pg_proc, 2836, 2837);
00047 DECLARE_TOAST(pg_rewrite, 2838, 2839);
00048 DECLARE_TOAST(pg_seclabel, 3598, 3599);
00049 DECLARE_TOAST(pg_statistic, 2840, 2841);
00050 DECLARE_TOAST(pg_trigger, 2336, 2337);
00051 
00052 /* shared catalogs */
00053 DECLARE_TOAST(pg_shdescription, 2846, 2847);
00054 #define PgShdescriptionToastTable 2846
00055 #define PgShdescriptionToastIndex 2847
00056 DECLARE_TOAST(pg_db_role_setting, 2966, 2967);
00057 #define PgDbRoleSettingToastTable 2966
00058 #define PgDbRoleSettingToastIndex 2967
00059 
00060 #endif   /* TOASTING_H */