summaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2006-07-31 01:16:38 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2006-07-31 01:16:38 +0000
commit6e38e34d64b5769272e0ab873416aa6c95509b50 (patch)
tree2400d919e0296ff0fd4d014ccb7846bc2c8c7f69 /doc/src
parent638860ce3581f80f836c7374936a250ec46f35a2 (diff)
Change the bootstrap sequence so that toast tables for system catalogs are
created in the bootstrap phase proper, rather than added after-the-fact by initdb. This is cleaner than before because it allows us to retire the undocumented ALTER TABLE ... CREATE TOAST TABLE command, but the real reason I'm doing it is so that toast tables of shared catalogs will now have predetermined OIDs. This will allow a reasonably clean solution to the problem of locking tables before we load their relcache entries, to appear in a forthcoming patch.
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/bki.sgml32
-rw-r--r--doc/src/sgml/keywords.sgml9
2 files changed, 31 insertions, 10 deletions
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index a08119983a2..ca839e8a40e 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/bki.sgml,v 1.17 2006/03/10 19:10:46 momjian Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/bki.sgml,v 1.18 2006/07/31 01:16:36 tgl Exp $ -->
<chapter id="bki">
<title><acronym>BKI</acronym> Backend Interface</title>
@@ -210,6 +210,28 @@
</varlistentry>
<varlistentry>
+ <term>
+ <literal>declare toast</>
+ <replaceable class="parameter">toasttableoid</replaceable>
+ <replaceable class="parameter">toastindexoid</replaceable>
+ <literal>on</> <replaceable class="parameter">tablename</replaceable>
+ </term>
+
+ <listitem>
+ <para>
+ Create a TOAST table for the table named
+ <replaceable class="parameter">tablename</replaceable>.
+ The TOAST table is assigned OID
+ <replaceable class="parameter">toasttableoid</replaceable>
+ and its index is assigned OID
+ <replaceable class="parameter">toastindexoid</replaceable>.
+ As with <literal>declare index</>, filling of the index
+ is postponed.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><literal>build indices</></term>
<listitem>
@@ -236,6 +258,12 @@
</para>
<para>
+ Also, the <literal>declare index</> and <literal>declare toast</>
+ commands cannot be used until the system catalogs they need have been
+ created and filled in.
+ </para>
+
+ <para>
Thus, the structure of the <filename>postgres.bki</filename> file has to
be:
<orderedlist>
@@ -286,7 +314,7 @@
</listitem>
<listitem>
<para>
- Define indexes.
+ Define indexes and toast tables.
</para>
</listitem>
<listitem>
diff --git a/doc/src/sgml/keywords.sgml b/doc/src/sgml/keywords.sgml
index 71295125c4f..cf55b830485 100644
--- a/doc/src/sgml/keywords.sgml
+++ b/doc/src/sgml/keywords.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/keywords.sgml,v 2.16 2005/10/12 09:45:29 petere Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/keywords.sgml,v 2.17 2006/07/31 01:16:36 tgl Exp $ -->
<appendix id="sql-keywords-appendix">
<title><acronym>SQL</acronym> Key Words</title>
@@ -4014,13 +4014,6 @@
<entry>reserved</entry>
</row>
<row>
- <entry><token>TOAST</token></entry>
- <entry>non-reserved</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
<entry><token>TOP_LEVEL_COUNT</token></entry>
<entry></entry>
<entry>non-reserved</entry>