-<!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.102 2010/04/03 07:22:55 petere Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.103 2010/04/16 02:22:33 momjian Exp $ -->
<chapter id="maintenance">
<title>Routine Database Maintenance Tasks</title>
since the last <command>ANALYZE</command>.
</para>
+ <para>
+ Temporary tables cannot be accessed by autovacuum. Therefore,
+ appropriate vacuum and analyze operations should be performed via
+ session SQL commands.
+ </para>
+
<para>
The default thresholds and scale factors are taken from
<filename>postgresql.conf</filename>, but it is possible to override them
<!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/create_table.sgml,v 1.125 2010/04/03 07:23:00 petere Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/create_table.sgml,v 1.126 2010/04/16 02:22:33 momjian Exp $
PostgreSQL documentation
-->
table are automatically temporary as well.
</para>
+ <para>
+ The <link linkend="autovacuum">autovacuum daemon</link> cannot
+ access and therefore cannot vacuum or analyze temporary tables.
+ For this reason, appropriate vacuum and analyze operations should be
+ performed via session SQL commands. For example, if a temporary
+ table is going to be used in complex queries, it is wise to run
+ <command>ANALYZE</> on the temporary table after it is populated.
+ </para>
+
<para>
Optionally, <literal>GLOBAL</literal> or <literal>LOCAL</literal>
can be written before <literal>TEMPORARY</> or <literal>TEMP</>.